time="2024-07-17T10:53:26Z" level=warning msg="/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/integration-test/docker-compose.yaml: `version` is obsolete" Container integration-test-device-1 Creating Container integration-test-authentication-1 Creating Container integration-test-authorization-1 Creating Container integration-test-experiment-1 Creating Container integration-test-federation-1 Creating Container integration-test-gateway-1 Creating Container integration-test-federation-1 Created Container integration-test-experiment-1 Created Container integration-test-device-1 Created Container integration-test-gateway-1 Created Container integration-test-authentication-1 Created Container integration-test-authorization-1 Created Attaching to authentication-1, authorization-1, device-1, experiment-1, federation-1, gateway-1 gateway-1 | /docker-entrypoint.sh: /docker-entrypoint.d/ is not empty, will attempt to perform configuration gateway-1 | /docker-entrypoint.sh: Looking for shell scripts in /docker-entrypoint.d/ gateway-1 | /docker-entrypoint.sh: Launching /docker-entrypoint.d/10-listen-on-ipv6-by-default.sh gateway-1 | 10-listen-on-ipv6-by-default.sh: info: Getting the checksum of /etc/nginx/conf.d/default.conf gateway-1 | 10-listen-on-ipv6-by-default.sh: info: Enabled listen on IPv6 in /etc/nginx/conf.d/default.conf gateway-1 | /docker-entrypoint.sh: Sourcing /docker-entrypoint.d/15-local-resolvers.envsh gateway-1 | /docker-entrypoint.sh: Launching /docker-entrypoint.d/20-create_config.sh gateway-1 | 20-create_config.sh: Running envsubst on /etc/nginx/templates/authorization_service.conf to /etc/nginx/authorization_service.conf gateway-1 | 20-create_config.sh: Running envsubst on /etc/nginx/templates/nginx.conf to /etc/nginx/nginx.conf gateway-1 | 20-create_config.sh: Running envsubst on /etc/nginx/templates/device_service.conf to /etc/nginx/device_service.conf gateway-1 | 20-create_config.sh: Running envsubst on /etc/nginx/templates/experiment_service.conf to /etc/nginx/experiment_service.conf gateway-1 | 20-create_config.sh: Running envsubst on /etc/nginx/templates/auth_service.conf to /etc/nginx/auth_service.conf gateway-1 | 20-create_config.sh: Running envsubst on /etc/nginx/templates/federation_service.conf to /etc/nginx/federation_service.conf gateway-1 | 20-create_config.sh: Running envsubst on /etc/nginx/templates/api_json_errors.conf to /etc/nginx/api_json_errors.conf gateway-1 | 20-create_config.sh: Running envsubst on /etc/nginx/templates/api_backends.conf to /etc/nginx/api_backends.conf gateway-1 | 20-create_config.sh: Running envsubst on /etc/nginx/templates/api_gateway.conf to /etc/nginx/api_gateway.conf gateway-1 | /docker-entrypoint.sh: Launching /docker-entrypoint.d/30-tune-worker-processes.sh gateway-1 | /docker-entrypoint.sh: Configuration complete; ready for start up federation-1 | {"level":"info","log_level":"info","message":"Logging initialized","transports":"stdout"} authorization-1 | {"level":"info","log_level":"info","message":"Logging initialized","transports":"stdout"} federation-1 | {"level":"info","message":"Federation Service started successfully"} authorization-1 | {"addrs":["localhost:3011"],"diagnostic-addrs":[],"level":"info","msg":"Initializing server.","subsystem":"opa","time":"2024-07-17T10:53:56Z"} authentication-1 | {"level":"info","log_level":"info","message":"Logging initialized","transports":"stdout"} experiment-1 | {"level":"info","log_level":"info","message":"Logging initialized","transports":"stdout"} device-1 | {"level":"info","log_level":"info","message":"Logging initialized","transports":"stdout"} device-1 | {"level":"info","message":"Device Service started successfully"} authentication-1 | {"level":"info","message":"Authentication Service started successfully"} experiment-1 | {"level":"info","message":"Experiment Service started successfully"} authorization-1 | {"client_addr":"127.0.0.1:43130","level":"info","msg":"Received request.","req_id":1,"req_method":"GET","req_path":"/","subsystem":"opa","time":"2024-07-17T10:53:57Z"} authorization-1 | {"client_addr":"127.0.0.1:43130","level":"info","msg":"Sent response.","req_id":1,"req_method":"GET","req_path":"/","resp_bytes":1424,"resp_duration":0.24258,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:53:57Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"info","message":"๐Ÿงช experimental features enabled: []","subsystem":"openfga","timestamp":1721213637.0939994} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"info","message":"using 'memory' storage engine","subsystem":"openfga","timestamp":1721213637.0941448} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"warn","message":"authentication is disabled","subsystem":"openfga","timestamp":1721213637.0941665} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"warn","message":"grpc TLS is disabled, serving connections using insecure plaintext","subsystem":"openfga","timestamp":1721213637.094217} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"info","message":"๐Ÿ“ˆ starting metrics server on '0.0.0.0:2112'","subsystem":"openfga","timestamp":1721213637.0942392} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","date":"2023-06-30T20:11:20Z","go-version":"go1.20.5","level":"info","message":"๐Ÿš€ starting openfga service...","subsystem":"openfga","timestamp":1721213637.094363,"version":"v1.2.0"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"info","message":"grpc server listening on 'localhost:3012'...","subsystem":"openfga","timestamp":1721213637.0947664} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"info","message":"HTTP server listening on 'localhost:3013'...","subsystem":"openfga","timestamp":1721213637.095544} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"CreateStore","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"name":"crosslab"},"raw_response":{"created_at":"2024-07-17T10:53:57.114186920Z","id":"01J3057MFT8W5871BT6362YY2Z","name":"crosslab","updated_at":"2024-07-17T10:53:57.114186920Z"},"request_id":"31418b87-874b-4a0f-8903-b6a53d16b9aa","subsystem":"openfga","timestamp":1721213637.1142979} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"WriteAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"schema_version":"1.1","store_id":"01J3057MFT8W5871BT6362YY2Z","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]},"raw_response":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW"},"request_id":"4cddeb6b-18b9-4860-a2f7-78d0bfd13ae2","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213637.1505105} authorization-1 | {"client_addr":"127.0.0.1:43130","level":"info","msg":"Received request.","req_id":2,"req_method":"PUT","req_path":"/v1/data/jwt_secret","subsystem":"opa","time":"2024-07-17T10:53:57Z"} authorization-1 | {"client_addr":"127.0.0.1:43130","level":"info","msg":"Sent response.","req_id":2,"req_method":"PUT","req_path":"/v1/data/jwt_secret","resp_bytes":0,"resp_duration":0.225321,"resp_status":204,"subsystem":"opa","time":"2024-07-17T10:53:57Z"} authorization-1 | {"level":"info","message":"Authorization Service started successfully"} authorization-1 | {"current_version":"0.54.0","download_opa":"https://openpolicyagent.org/downloads/v0.66.0/opa_linux_amd64","latest_version":"0.66.0","level":"info","msg":"OPA is out of date.","release_notes":"https://github.com/open-policy-agent/opa/releases/tag/v0.66.0","subsystem":"opa","time":"2024-07-17T10:53:57Z"} gateway-1 | {"time_local":"17/Jul/2024:10:54:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"HEAD /auth/status HTTP/1.1","status": "200","body_bytes_sent":"0","request_time":"0.026","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"bf88692998b517df81b7b4ab16d3c3d7"} authentication-1 | {"level":"info","message":"HEAD /auth/status 200 17ms","method":"HEAD","requestID":"bf88692998b517df81b7b4ab16d3c3d7","responseTime":17,"status":200,"url":"/auth/status"} gateway-1 | {"time_local":"17/Jul/2024:10:54:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"HEAD /device/status HTTP/1.1","status": "200","body_bytes_sent":"0","request_time":"0.014","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"15016550127205e7a656106c583fe6d3"} device-1 | {"level":"info","message":"HEAD /device/status 200 10ms","method":"HEAD","requestID":"e18500c0-442a-11ef-8685-a1e9f27e6f28","responseTime":10,"status":200,"url":"/device/status"} gateway-1 | {"time_local":"17/Jul/2024:10:54:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"HEAD /authorization/status HTTP/1.1","status": "200","body_bytes_sent":"0","request_time":"0.010","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"c8a9a5eb65f841fc445b5a78d149b243"} authorization-1 | {"level":"info","message":"HEAD /authorization/status 200 7ms","method":"HEAD","requestID":"c8a9a5eb65f841fc445b5a78d149b243","responseTime":7,"status":200,"url":"/authorization/status"} gateway-1 | {"time_local":"17/Jul/2024:10:54:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"HEAD /federation/status HTTP/1.1","status": "200","body_bytes_sent":"0","request_time":"0.015","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"3f77f164db2758d1b9d004f4c0a364a9"} federation-1 | {"level":"info","message":"HEAD /federation/status 200 10ms","method":"HEAD","requestID":"e18b1b40-442a-11ef-b5cf-e797e666ab35","responseTime":10,"status":200,"url":"/federation/status"} gateway-1 | {"time_local":"17/Jul/2024:10:54:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"HEAD /experiment/status HTTP/1.1","status": "200","body_bytes_sent":"0","request_time":"0.020","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"307bff9b9249cc2822d00ee8e3045282"} experiment-1 | {"level":"info","message":"HEAD /experiment/status 200 13ms","method":"HEAD","requestID":"e18ec4c0-442a-11ef-8b2c-33a9016d71c5","responseTime":13,"status":200,"url":"/experiment/status"} gateway-1 | {"time_local":"17/Jul/2024:10:54:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /login HTTP/1.1","status": "201","body_bytes_sent":"88","request_time":"0.155","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f86daaba0ba1f1e8891e0245def7b4c4"} authentication-1 | {"level":"info","message":"POST /login 201 131ms","method":"POST","requestID":"f86daaba0ba1f1e8891e0245def7b4c4","responseTime":131,"status":201,"url":"/login"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY0Nn0.xA0LwEKi4Hgjn0BzNHh6Awr7IhoFQqWmrkZAgJgJxb0","level":"info","message":"auth send jwt","requestID":"181273a704e2eae97ad30289aed06263"} authentication-1 | {"level":"info","message":"GET /auth 200 36ms","method":"GET","requestID":"181273a704e2eae97ad30289aed06263","responseTime":36,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"181273a704e2eae97ad30289aed06263"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":3,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:06Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":3,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":2.576683,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:06Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"181273a704e2eae97ad30289aed06263","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213646,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY0Nn0.xA0LwEKi4Hgjn0BzNHh6Awr7IhoFQqWmrkZAgJgJxb0"} authorization-1 | {"level":"info","message":"POST /authorize 200 29ms","method":"POST","requestID":"181273a704e2eae97ad30289aed06263","responseTime":29,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00aa75e8-66b4-4623-b210-34bc16285a5b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"50501986-e862-4810-ba66-25d9ed79462f","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213646.5876071} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"181273a704e2eae97ad30289aed06263","responseTime":8,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"86eca875-c6e4-408a-bc60-43f5a29f1355","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213646.6029787} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"181273a704e2eae97ad30289aed06263","responseTime":10,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00aa75e8-66b4-4623-b210-34bc16285a5b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"768eb799-8fb9-4cfb-981d-9dd7a59a24ce","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213646.6201198} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8368490d-d0df-4821-b66f-4b088c7f6705","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213646.6211324} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"181273a704e2eae97ad30289aed06263","responseTime":21,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00aa75e8-66b4-4623-b210-34bc16285a5b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00aa75e8-66b4-4623-b210-34bc16285a5b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:06.620078750Z"}]},"request_id":"3188d779-9ee7-45a2-bab6-2c024a15906c","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213646.628201} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"181273a704e2eae97ad30289aed06263","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"181273a704e2eae97ad30289aed06263"} gateway-1 | {"time_local":"17/Jul/2024:10:54:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.273","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"181273a704e2eae97ad30289aed06263"} device-1 | {"level":"info","message":"POST /devices? 201 218ms","method":"POST","requestID":"181273a704e2eae97ad30289aed06263","responseTime":218,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY0Nn0.xA0LwEKi4Hgjn0BzNHh6Awr7IhoFQqWmrkZAgJgJxb0","level":"info","message":"auth send jwt","requestID":"522ab9a1787191d9353a5db866ca0f7b"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"522ab9a1787191d9353a5db866ca0f7b","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"522ab9a1787191d9353a5db866ca0f7b"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":4,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:06Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":4,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.730431,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:06Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"522ab9a1787191d9353a5db866ca0f7b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213646,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY0Nn0.xA0LwEKi4Hgjn0BzNHh6Awr7IhoFQqWmrkZAgJgJxb0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"522ab9a1787191d9353a5db866ca0f7b","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"9843fc59-5598-48cf-9fc2-8e4d549e2f04","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213646.6863549} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"522ab9a1787191d9353a5db866ca0f7b","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"61206f0a-9a14-423a-bd20-4ed6e4320f78","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213646.6991122} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"522ab9a1787191d9353a5db866ca0f7b","responseTime":10,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"e44684ef-22a5-4767-907a-ea94da7e61bf","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213646.7197158} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3ad3d99e-fc1e-4594-b9f2-0138fc2a3f7c","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213646.7199483} authorization-1 | {"level":"info","message":"POST /relations/update 200 26ms","method":"POST","requestID":"522ab9a1787191d9353a5db866ca0f7b","responseTime":26,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:06.719701646Z"}]},"request_id":"86beb14d-cb16-4a86-b8e9-65f898a96fec","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213646.733026} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"522ab9a1787191d9353a5db866ca0f7b","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"522ab9a1787191d9353a5db866ca0f7b"} gateway-1 | {"time_local":"17/Jul/2024:10:54:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.087","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"522ab9a1787191d9353a5db866ca0f7b"} device-1 | {"level":"info","message":"POST /devices? 201 79ms","method":"POST","requestID":"522ab9a1787191d9353a5db866ca0f7b","responseTime":79,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c1db7041277495fc4f76ad34158bec5e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"c1db7041277495fc4f76ad34158bec5e","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"85a7bf1556fd4960a2444f6b271eda28","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"85a7bf1556fd4960a2444f6b271eda28","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"17/Jul/2024:10:54:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/00aa75e8-66b4-4623-b210-34bc16285a5b/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.006","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"c1db7041277495fc4f76ad34158bec5e"} device-1 | {"level":"info","message":"OPTIONS /devices/00aa75e8-66b4-4623-b210-34bc16285a5b/websocket 200 2ms","method":"OPTIONS","requestID":"c1db7041277495fc4f76ad34158bec5e","responseTime":2,"status":200,"url":"/devices/00aa75e8-66b4-4623-b210-34bc16285a5b/websocket"} gateway-1 | {"time_local":"17/Jul/2024:10:54:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.010","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"85a7bf1556fd4960a2444f6b271eda28"} device-1 | {"level":"info","message":"OPTIONS /devices/3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87/websocket 200 1ms","method":"OPTIONS","requestID":"85a7bf1556fd4960a2444f6b271eda28","responseTime":1,"status":200,"url":"/devices/3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY0OX0.2md4QZIKO2WDBUYINl42rWfEdXOP8yoMMUylW1eR4to","level":"info","message":"auth send jwt","requestID":"f733da3f7a8759903e0083cc9c937980"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"f733da3f7a8759903e0083cc9c937980","responseTime":7,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY0OX0.2md4QZIKO2WDBUYINl42rWfEdXOP8yoMMUylW1eR4to","level":"info","message":"auth send jwt","requestID":"77374370097148ddc68822c54df1c793"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"77374370097148ddc68822c54df1c793","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"f733da3f7a8759903e0083cc9c937980"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"77374370097148ddc68822c54df1c793"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":5,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:09Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":5,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.195711,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:09Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/00aa75e8-66b4-4623-b210-34bc16285a5b","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f733da3f7a8759903e0083cc9c937980","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/00aa75e8-66b4-4623-b210-34bc16285a5b","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213649,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY0OX0.2md4QZIKO2WDBUYINl42rWfEdXOP8yoMMUylW1eR4to"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"f733da3f7a8759903e0083cc9c937980","responseTime":14,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60544","level":"info","msg":"Received request.","req_id":6,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:09Z"} authorization-1 | {"client_addr":"127.0.0.1:60544","level":"info","msg":"Sent response.","req_id":6,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.095873,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:09Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"77374370097148ddc68822c54df1c793","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213649,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY0OX0.2md4QZIKO2WDBUYINl42rWfEdXOP8yoMMUylW1eR4to"} authorization-1 | {"level":"info","message":"POST /authorize 200 16ms","method":"POST","requestID":"77374370097148ddc68822c54df1c793","responseTime":16,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"f733da3f7a8759903e0083cc9c937980"} gateway-1 | {"time_local":"17/Jul/2024:10:54:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/00aa75e8-66b4-4623-b210-34bc16285a5b/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.067","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"f733da3f7a8759903e0083cc9c937980"} device-1 | {"level":"info","message":"POST /devices/00aa75e8-66b4-4623-b210-34bc16285a5b/websocket 200 57ms","method":"POST","requestID":"f733da3f7a8759903e0083cc9c937980","responseTime":57,"status":200,"url":"/devices/00aa75e8-66b4-4623-b210-34bc16285a5b/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"77374370097148ddc68822c54df1c793"} gateway-1 | {"time_local":"17/Jul/2024:10:54:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.075","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"77374370097148ddc68822c54df1c793"} device-1 | {"level":"info","message":"POST /devices/3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87/websocket 200 61ms","method":"POST","requestID":"77374370097148ddc68822c54df1c793","responseTime":61,"status":200,"url":"/devices/3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/00aa75e8-66b4-4623-b210-34bc16285a5b' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY0OX0.2md4QZIKO2WDBUYINl42rWfEdXOP8yoMMUylW1eR4to","level":"info","message":"auth send jwt","requestID":"fe7ad4a6bbb9b0f4ac190490edfca572"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"fe7ad4a6bbb9b0f4ac190490edfca572","responseTime":7,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fe7ad4a6bbb9b0f4ac190490edfca572"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":7,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:09Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":7,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.288098,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/00aa75e8-66b4-4623-b210-34bc16285a5b","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"fe7ad4a6bbb9b0f4ac190490edfca572","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/00aa75e8-66b4-4623-b210-34bc16285a5b","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213649,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY0OX0.2md4QZIKO2WDBUYINl42rWfEdXOP8yoMMUylW1eR4to"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"fe7ad4a6bbb9b0f4ac190490edfca572","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00aa75e8-66b4-4623-b210-34bc16285a5b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00aa75e8-66b4-4623-b210-34bc16285a5b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:06.620078750Z"}]},"request_id":"b10ffa3e-0763-4a14-9c74-dae3bedbe21e","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213649.2639344} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"fe7ad4a6bbb9b0f4ac190490edfca572","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fe7ad4a6bbb9b0f4ac190490edfca572"} gateway-1 | {"time_local":"17/Jul/2024:10:54:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/00aa75e8-66b4-4623-b210-34bc16285a5b? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.041","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"fe7ad4a6bbb9b0f4ac190490edfca572"} device-1 | {"level":"info","message":"GET /devices/00aa75e8-66b4-4623-b210-34bc16285a5b? 200 31ms","method":"GET","requestID":"fe7ad4a6bbb9b0f4ac190490edfca572","responseTime":31,"status":200,"url":"/devices/00aa75e8-66b4-4623-b210-34bc16285a5b?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY0OX0.2md4QZIKO2WDBUYINl42rWfEdXOP8yoMMUylW1eR4to","level":"info","message":"auth send jwt","requestID":"66a8dbe2188a3411ae9157a6cbfe1fc8"} authentication-1 | {"level":"info","message":"GET /auth 200 8ms","method":"GET","requestID":"66a8dbe2188a3411ae9157a6cbfe1fc8","responseTime":8,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"66a8dbe2188a3411ae9157a6cbfe1fc8"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":8,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:09Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":8,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.829405,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"66a8dbe2188a3411ae9157a6cbfe1fc8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213649,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY0OX0.2md4QZIKO2WDBUYINl42rWfEdXOP8yoMMUylW1eR4to"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"66a8dbe2188a3411ae9157a6cbfe1fc8","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:06.719701646Z"}]},"request_id":"50d802d9-4af5-450c-9518-1aee3c4afb15","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213649.3077} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"66a8dbe2188a3411ae9157a6cbfe1fc8","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"66a8dbe2188a3411ae9157a6cbfe1fc8"} gateway-1 | {"time_local":"17/Jul/2024:10:54:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.033","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"66a8dbe2188a3411ae9157a6cbfe1fc8"} device-1 | {"level":"info","message":"GET /devices/3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87? 200 23ms","method":"GET","requestID":"66a8dbe2188a3411ae9157a6cbfe1fc8","responseTime":23,"status":200,"url":"/devices/3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY0OX0.2md4QZIKO2WDBUYINl42rWfEdXOP8yoMMUylW1eR4to","level":"info","message":"auth send jwt","requestID":"94afa13183b221e08426a72acd39e7fc"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"94afa13183b221e08426a72acd39e7fc","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"94afa13183b221e08426a72acd39e7fc"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":9,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:09Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":9,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.012148,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:09Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"94afa13183b221e08426a72acd39e7fc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213649,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY0OX0.2md4QZIKO2WDBUYINl42rWfEdXOP8yoMMUylW1eR4to"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"94afa13183b221e08426a72acd39e7fc","responseTime":8,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/35c329e7-6d7e-45b6-af36-44d9f836d16f"},"level":"info","message":"Attempting to run experiment","requestID":"94afa13183b221e08426a72acd39e7fc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/35c329e7-6d7e-45b6-af36-44d9f836d16f"},"level":"info","message":"Attempting to book experiment","requestID":"94afa13183b221e08426a72acd39e7fc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/35c329e7-6d7e-45b6-af36-44d9f836d16f"},"level":"info","message":"Successfully booked experiment","requestID":"94afa13183b221e08426a72acd39e7fc"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e5211340-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e5216160-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":10,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:09Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":10,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.622229,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:09Z"} authorization-1 | {"client_addr":"127.0.0.1:60544","level":"info","msg":"Received request.","req_id":11,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/00aa75e8-66b4-4623-b210-34bc16285a5b","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"e5211340-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/00aa75e8-66b4-4623-b210-34bc16285a5b","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213649,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY0OX0.2md4QZIKO2WDBUYINl42rWfEdXOP8yoMMUylW1eR4to"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e5211340-442a-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60544","level":"info","msg":"Sent response.","req_id":11,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.654955,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"e5216160-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213649,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY0OX0.2md4QZIKO2WDBUYINl42rWfEdXOP8yoMMUylW1eR4to"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e5216160-442a-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00aa75e8-66b4-4623-b210-34bc16285a5b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00aa75e8-66b4-4623-b210-34bc16285a5b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:06.620078750Z"}]},"request_id":"fc8f57bb-b806-496a-a7c2-90e1097f24de","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213649.537275} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"e5211340-442a-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:06.719701646Z"}]},"request_id":"97a8637d-6dfd-4cba-a97b-ab1d548f46f4","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213649.5390332} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"e5216160-442a-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e5211340-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/00aa75e8-66b4-4623-b210-34bc16285a5b? 200 23ms","method":"GET","requestID":"e5211340-442a-11ef-8685-a1e9f27e6f28","responseTime":23,"status":200,"url":"/devices/00aa75e8-66b4-4623-b210-34bc16285a5b?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e5216160-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87? 200 22ms","method":"GET","requestID":"e5216160-442a-11ef-8685-a1e9f27e6f28","responseTime":22,"status":200,"url":"/devices/3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/35c329e7-6d7e-45b6-af36-44d9f836d16f"},"level":"info","message":"Setting up experiment","requestID":"94afa13183b221e08426a72acd39e7fc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/35c329e7-6d7e-45b6-af36-44d9f836d16f"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"94afa13183b221e08426a72acd39e7fc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/35c329e7-6d7e-45b6-af36-44d9f836d16f"},"level":"info","message":"Successfully locked booking for experiment","requestID":"94afa13183b221e08426a72acd39e7fc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/35c329e7-6d7e-45b6-af36-44d9f836d16f"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"94afa13183b221e08426a72acd39e7fc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/35c329e7-6d7e-45b6-af36-44d9f836d16f"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"94afa13183b221e08426a72acd39e7fc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/35c329e7-6d7e-45b6-af36-44d9f836d16f"},"level":"info","message":"Attempting to update booking for experiment","requestID":"94afa13183b221e08426a72acd39e7fc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/35c329e7-6d7e-45b6-af36-44d9f836d16f"},"level":"info","message":"Successfully updated booking for experiment","requestID":"94afa13183b221e08426a72acd39e7fc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/35c329e7-6d7e-45b6-af36-44d9f836d16f"},"level":"info","message":"Successfully set up experiment","requestID":"94afa13183b221e08426a72acd39e7fc"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e52fb940-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e5302e70-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e530f1c0-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":12,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:09Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":12,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.876478,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:09Z"} authorization-1 | {"client_addr":"127.0.0.1:60544","level":"info","msg":"Received request.","req_id":13,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:09Z"} authorization-1 | {"client_addr":"127.0.0.1:60544","level":"info","msg":"Sent response.","req_id":13,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.198019,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:09Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/35c329e7-6d7e-45b6-af36-44d9f836d16f"},"level":"info","message":"Successfully running experiment","requestID":"94afa13183b221e08426a72acd39e7fc"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/00aa75e8-66b4-4623-b210-34bc16285a5b","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"e52fb940-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/00aa75e8-66b4-4623-b210-34bc16285a5b","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213649,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY0OX0.2md4QZIKO2WDBUYINl42rWfEdXOP8yoMMUylW1eR4to"} authorization-1 | {"level":"info","message":"POST /authorize 200 15ms","method":"POST","requestID":"e52fb940-442a-11ef-8685-a1e9f27e6f28","responseTime":15,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"e5302e70-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213649,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY0OX0.2md4QZIKO2WDBUYINl42rWfEdXOP8yoMMUylW1eR4to"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"e5302e70-442a-11ef-8685-a1e9f27e6f28","responseTime":13,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:06.719701646Z"}]},"request_id":"61287160-8b9d-453f-85e9-60e137d88c2d","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213649.6510696} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00aa75e8-66b4-4623-b210-34bc16285a5b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00aa75e8-66b4-4623-b210-34bc16285a5b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:06.620078750Z"}]},"request_id":"e0a42b0d-a277-4756-9561-e1d3ece1c8b8","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213649.6537457} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"e5302e70-442a-11ef-8685-a1e9f27e6f28","responseTime":9,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"e52fb940-442a-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:60560","level":"info","msg":"Received request.","req_id":14,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:09Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00aa75e8-66b4-4623-b210-34bc16285a5b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b3433e35-8963-4a53-a8c0-5563096ca837","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213649.6571813} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e5302e70-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60560","level":"info","msg":"Sent response.","req_id":14,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.69761,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:09Z"} device-1 | {"level":"info","message":"GET /devices/3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87? 200 41ms","method":"GET","requestID":"e5302e70-442a-11ef-8685-a1e9f27e6f28","responseTime":41,"status":200,"url":"/devices/3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/00aa75e8-66b4-4623-b210-34bc16285a5b","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"e530f1c0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/00aa75e8-66b4-4623-b210-34bc16285a5b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e52fb940-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/00aa75e8-66b4-4623-b210-34bc16285a5b? 200 45ms","method":"GET","requestID":"e52fb940-442a-11ef-8685-a1e9f27e6f28","responseTime":45,"status":200,"url":"/devices/00aa75e8-66b4-4623-b210-34bc16285a5b?"} authorization-1 | {"level":"info","message":"POST /authorize 200 24ms","method":"POST","requestID":"e530f1c0-442a-11ef-8685-a1e9f27e6f28","responseTime":24,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F35c329e7-6d7e-45b6-af36-44d9f836d16f#owner@http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F35c329e7-6d7e-45b6-af36-44d9f836d16f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"814b7263-c352-49bb-8c08-3c8883db9815","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213649.6636288} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"075ae115-c1cb-4efa-95bb-d7ad8acf9a0e","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213649.6641212} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e530f1c0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/00aa75e8-66b4-4623-b210-34bc16285a5b/signaling 200 42ms","method":"POST","requestID":"e530f1c0-442a-11ef-8685-a1e9f27e6f28","responseTime":42,"status":200,"url":"/devices/00aa75e8-66b4-4623-b210-34bc16285a5b/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 27ms","method":"POST","requestID":"94afa13183b221e08426a72acd39e7fc","responseTime":27,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e537a880-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e5381db0-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":15,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:09Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":15,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.513512,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:09Z"} authorization-1 | {"client_addr":"127.0.0.1:60544","level":"info","msg":"Received request.","req_id":16,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:09Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00aa75e8-66b4-4623-b210-34bc16285a5b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"239adbde-1fcc-4877-b0a9-cb4ae12783f8","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213649.679186} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/00aa75e8-66b4-4623-b210-34bc16285a5b","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"e537a880-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/00aa75e8-66b4-4623-b210-34bc16285a5b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"e537a880-442a-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"13ef5057-dae6-4578-9c8b-9e7f69608cbf","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213649.6818275} authorization-1 | {"client_addr":"127.0.0.1:60544","level":"info","msg":"Sent response.","req_id":16,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.740801,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"e5381db0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e537a880-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"e5381db0-442a-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"POST /devices/00aa75e8-66b4-4623-b210-34bc16285a5b/signaling 200 14ms","method":"POST","requestID":"e537a880-442a-11ef-8685-a1e9f27e6f28","responseTime":14,"status":200,"url":"/devices/00aa75e8-66b4-4623-b210-34bc16285a5b/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/35c329e7-6d7e-45b6-af36-44d9f836d16f","user":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"94afa13183b221e08426a72acd39e7fc"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e5381db0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87/signaling 200 13ms","method":"POST","requestID":"e5381db0-442a-11ef-8685-a1e9f27e6f28","responseTime":13,"status":200,"url":"/devices/3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87/signaling"} gateway-1 | {"time_local":"17/Jul/2024:10:54:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"807","request_time":"0.368","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"94afa13183b221e08426a72acd39e7fc"} experiment-1 | {"level":"info","message":"POST /experiments? 201 341ms","method":"POST","requestID":"94afa13183b221e08426a72acd39e7fc","responseTime":341,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e53adcd0-442a-11ef-8685-a1e9f27e6f28"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY0OX0.2md4QZIKO2WDBUYINl42rWfEdXOP8yoMMUylW1eR4to","level":"info","message":"auth send jwt","requestID":"14fe9a89e95d00e1486dc251409899bb"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":17,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:09Z"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"14fe9a89e95d00e1486dc251409899bb","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"14fe9a89e95d00e1486dc251409899bb"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"41bb9c60-6357-4600-ac74-2cf5dda9fcc0","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213649.7001326} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":17,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.911357,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:09Z"} authorization-1 | {"client_addr":"127.0.0.1:60544","level":"info","msg":"Received request.","req_id":18,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"e53adcd0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"e53adcd0-442a-11ef-8685-a1e9f27e6f28","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60544","level":"info","msg":"Sent response.","req_id":18,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.62544,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/00aa75e8-66b4-4623-b210-34bc16285a5b","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"14fe9a89e95d00e1486dc251409899bb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/00aa75e8-66b4-4623-b210-34bc16285a5b","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213649,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY0OX0.2md4QZIKO2WDBUYINl42rWfEdXOP8yoMMUylW1eR4to"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"14fe9a89e95d00e1486dc251409899bb","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e53adcd0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87/signaling 200 15ms","method":"POST","requestID":"e53adcd0-442a-11ef-8685-a1e9f27e6f28","responseTime":15,"status":200,"url":"/devices/3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87/signaling"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00aa75e8-66b4-4623-b210-34bc16285a5b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00aa75e8-66b4-4623-b210-34bc16285a5b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:06.620078750Z"}]},"request_id":"48c6cd90-707f-489c-aa20-2047b256b27f","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213649.709025} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/35c329e7-6d7e-45b6-af36-44d9f836d16f"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"94afa13183b221e08426a72acd39e7fc"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"14fe9a89e95d00e1486dc251409899bb","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/35c329e7-6d7e-45b6-af36-44d9f836d16f"},"level":"info","message":"Building connection plan","requestID":"94afa13183b221e08426a72acd39e7fc"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"425fc89c-5fc3-42bc-ba1c-68256cea02d2"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"52e2e23a-9d8d-4c36-8096-4c752ac87ff7"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"0cbdbc83-e139-4f87-877d-7355aa656b5d"}]},"level":"info","message":"Built pairwise service configurations","requestID":"94afa13183b221e08426a72acd39e7fc"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/00aa75e8-66b4-4623-b210-34bc16285a5b"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"94afa13183b221e08426a72acd39e7fc"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"14fe9a89e95d00e1486dc251409899bb"} gateway-1 | {"time_local":"17/Jul/2024:10:54:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/00aa75e8-66b4-4623-b210-34bc16285a5b? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"14fe9a89e95d00e1486dc251409899bb"} device-1 | {"level":"info","message":"GET /devices/00aa75e8-66b4-4623-b210-34bc16285a5b? 200 16ms","method":"GET","requestID":"14fe9a89e95d00e1486dc251409899bb","responseTime":16,"status":200,"url":"/devices/00aa75e8-66b4-4623-b210-34bc16285a5b?"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"e53e8650-442a-11ef-8685-a1e9f27e6f28"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY0OX0.2md4QZIKO2WDBUYINl42rWfEdXOP8yoMMUylW1eR4to","level":"info","message":"auth send jwt","requestID":"07e70f2cb60760bbb5ab2f61d68bf912"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"07e70f2cb60760bbb5ab2f61d68bf912","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"07e70f2cb60760bbb5ab2f61d68bf912"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":19,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:09Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":19,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.000685,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:09Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"e53e8650-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213649,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY0OX0.2md4QZIKO2WDBUYINl42rWfEdXOP8yoMMUylW1eR4to"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e53e8650-442a-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60544","level":"info","msg":"Received request.","req_id":20,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:09Z"} authorization-1 | {"client_addr":"127.0.0.1:60544","level":"info","msg":"Sent response.","req_id":20,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.548543,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"07e70f2cb60760bbb5ab2f61d68bf912","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213649,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY0OX0.2md4QZIKO2WDBUYINl42rWfEdXOP8yoMMUylW1eR4to"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"07e70f2cb60760bbb5ab2f61d68bf912","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:06.719701646Z"}]},"request_id":"4b36d95c-4ede-428a-ad71-97594cfcbe55","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213649.731599} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"07e70f2cb60760bbb5ab2f61d68bf912","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"07e70f2cb60760bbb5ab2f61d68bf912"} gateway-1 | {"time_local":"17/Jul/2024:10:54:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"07e70f2cb60760bbb5ab2f61d68bf912"} device-1 | {"level":"info","message":"GET /devices/3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87? 200 16ms","method":"GET","requestID":"07e70f2cb60760bbb5ab2f61d68bf912","responseTime":16,"status":200,"url":"/devices/3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87?"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"66b8a9d8-51db-4524-8af3-d1878a36c5de","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213649.7464616} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"44ddf4e3-5cc2-433b-9ebf-88cb3b675495","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213649.7465897} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"e53e8650-442a-11ef-8685-a1e9f27e6f28","responseTime":15,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"e53e8650-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"e53e8650-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/55bb12d6-7e71-4f24-8153-99c4e15b84de'","requestID":"e53e8650-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/55bb12d6-7e71-4f24-8153-99c4e15b84de'","requestID":"e53e8650-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"e53e8650-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 49ms","method":"POST","requestID":"e53e8650-442a-11ef-8685-a1e9f27e6f28","responseTime":49,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"e53e8650-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/55bb12d6-7e71-4f24-8153-99c4e15b84de","device":"3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":false} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/55bb12d6-7e71-4f24-8153-99c4e15b84de","device":"00aa75e8-66b4-4623-b210-34bc16285a5b","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":true} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/35c329e7-6d7e-45b6-af36-44d9f836d16f"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"94afa13183b221e08426a72acd39e7fc"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e54b3080-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":21,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:09Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00aa75e8-66b4-4623-b210-34bc16285a5b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b35f26af-eca8-4bf2-8fed-a308d9400c53","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213649.8049212} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":21,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.441673,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/00aa75e8-66b4-4623-b210-34bc16285a5b","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"e54b3080-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/00aa75e8-66b4-4623-b210-34bc16285a5b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e54b3080-442a-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e54b3080-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/00aa75e8-66b4-4623-b210-34bc16285a5b/signaling 200 9ms","method":"POST","requestID":"e54b3080-442a-11ef-8685-a1e9f27e6f28","responseTime":9,"status":200,"url":"/devices/00aa75e8-66b4-4623-b210-34bc16285a5b/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e54d2c50-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":22,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:09Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1e4cf8a8-0714-473a-99ae-fee21820e4da","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213649.8187513} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":22,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.621922,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"e54d2c50-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e54d2c50-442a-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e54d2c50-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87/signaling 200 11ms","method":"POST","requestID":"e54d2c50-442a-11ef-8685-a1e9f27e6f28","responseTime":11,"status":200,"url":"/devices/3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87/signaling"} device-1 | {"device":"3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"00aa75e8-66b4-4623-b210-34bc16285a5b","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"00aa75e8-66b4-4623-b210-34bc16285a5b","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 6562748944871422901 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:h1Vi\r\na=ice-pwd:nGrc7Va0ClZsHMXNgeCKQqhI\r\na=ice-options:trickle\r\na=fingerprint:sha-256 C4:6E:A5:4D:F9:F7:C6:56:29:F3:39:B7:C4:8C:E7:12:1F:46:EF:B8:BB:20:E6:04:68:10:8C:8C:FE:E5:9A:A3\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"00aa75e8-66b4-4623-b210-34bc16285a5b","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 438603875530786021 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:zQys\r\na=ice-pwd:vtBNS7pIqtKoDEls5KG/lnPi\r\na=ice-options:trickle\r\na=fingerprint:sha-256 52:72:51:62:70:70:F2:B1:B1:22:84:2C:CE:02:51:FF:16:71:2A:C1:4F:9E:6A:A3:9F:94:CA:13:A7:DF:D7:81\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:1029418905 1 udp 2113937151 86e7f52c-5acd-4a7c-81d8-b862afa93976.local 60296 typ host generation 0 ufrag zQys network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87'"} device-1 | {"content":{"candidate":"candidate:3111568870 1 udp 1677729535 141.24.211.56 60296 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag zQys network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3521073115 1 udp 2113937151 5e49c172-246c-4f8b-9f1e-188483498736.local 56078 typ host generation 0 ufrag h1Vi network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"00aa75e8-66b4-4623-b210-34bc16285a5b","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1123348168 1 udp 1677729535 141.24.211.56 56078 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag h1Vi network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"00aa75e8-66b4-4623-b210-34bc16285a5b","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"00aa75e8-66b4-4623-b210-34bc16285a5b","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/00aa75e8-66b4-4623-b210-34bc16285a5b'"} device-1 | {"device":"3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/55bb12d6-7e71-4f24-8153-99c4e15b84de' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"55bb12d6-7e71-4f24-8153-99c4e15b84de","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"00aa75e8-66b4-4623-b210-34bc16285a5b","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"00aa75e8-66b4-4623-b210-34bc16285a5b","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"cc0e074a24efc4064aa2d701b24d7a05","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"cc0e074a24efc4064aa2d701b24d7a05","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/00aa75e8-66b4-4623-b210-34bc16285a5b"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/55bb12d6-7e71-4f24-8153-99c4e15b84de"}}},"level":"info","message":"received a callback","requestID":"cc0e074a24efc4064aa2d701b24d7a05"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 12ms","method":"POST","requestID":"cc0e074a24efc4064aa2d701b24d7a05","responseTime":12,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:54:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch","requestID":"cc0e074a24efc4064aa2d701b24d7a05"} device-1 | {"data":{"peerconnection":"55bb12d6-7e71-4f24-8153-99c4e15b84de","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"55bb12d6-7e71-4f24-8153-99c4e15b84de","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/55bb12d6-7e71-4f24-8153-99c4e15b84de' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"55bb12d6-7e71-4f24-8153-99c4e15b84de","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b17a564ef8c06f619d6a6cf0aa675a81","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"b17a564ef8c06f619d6a6cf0aa675a81","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/00aa75e8-66b4-4623-b210-34bc16285a5b"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/55bb12d6-7e71-4f24-8153-99c4e15b84de"}}},"level":"info","message":"received a callback","requestID":"b17a564ef8c06f619d6a6cf0aa675a81"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"e5608d40-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":23,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:09Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F55bb12d6-7e71-4f24-8153-99c4e15b84de","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"630eaaba-bf63-46fb-a421-5902933fe36c","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213649.9453828} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":23,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.726393,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/55bb12d6-7e71-4f24-8153-99c4e15b84de","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"e5608d40-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/55bb12d6-7e71-4f24-8153-99c4e15b84de","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e5608d40-442a-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"e5608d40-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /peerconnections/55bb12d6-7e71-4f24-8153-99c4e15b84de 200 10ms","method":"GET","requestID":"e5608d40-442a-11ef-8685-a1e9f27e6f28","responseTime":10,"status":200,"url":"/peerconnections/55bb12d6-7e71-4f24-8153-99c4e15b84de"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 41ms","method":"POST","requestID":"b17a564ef8c06f619d6a6cf0aa675a81","responseTime":41,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:54:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.045","http_referrer":"","http_user_agent":"node-fetch","requestID":"b17a564ef8c06f619d6a6cf0aa675a81"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e5660b80-442a-11ef-8685-a1e9f27e6f28"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY0OX0.2md4QZIKO2WDBUYINl42rWfEdXOP8yoMMUylW1eR4to","level":"info","message":"auth send jwt","requestID":"0705a695ce243f46eb2c3705da93f2f8"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":24,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:09Z"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"0705a695ce243f46eb2c3705da93f2f8","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/35c329e7-6d7e-45b6-af36-44d9f836d16f","requestID":"0705a695ce243f46eb2c3705da93f2f8"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"799e3137-a9dc-4a00-830b-0d7f1a924c48","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213649.9818256} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":24,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.555087,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"e5660b80-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e5660b80-442a-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":25,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:09Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e5660b80-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":25,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.904504,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:09Z"} device-1 | {"level":"info","message":"POST /devices/3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87/signaling 200 10ms","method":"POST","requestID":"e5660b80-442a-11ef-8685-a1e9f27e6f28","responseTime":10,"status":200,"url":"/devices/3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87/signaling"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/35c329e7-6d7e-45b6-af36-44d9f836d16f","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0705a695ce243f46eb2c3705da93f2f8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:http://localhost/experiments/35c329e7-6d7e-45b6-af36-44d9f836d16f","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213649,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY0OX0.2md4QZIKO2WDBUYINl42rWfEdXOP8yoMMUylW1eR4to"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0705a695ce243f46eb2c3705da93f2f8","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e5682e60-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":26,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:09Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00aa75e8-66b4-4623-b210-34bc16285a5b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"de65b7b9-86c6-45b7-8183-074fcb5f1fcc","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213649.9951458} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/35c329e7-6d7e-45b6-af36-44d9f836d16f","requestID":"0705a695ce243f46eb2c3705da93f2f8"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":26,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.007828,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/00aa75e8-66b4-4623-b210-34bc16285a5b","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"e5682e60-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/00aa75e8-66b4-4623-b210-34bc16285a5b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e5682e60-442a-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"17/Jul/2024:10:54:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/35c329e7-6d7e-45b6-af36-44d9f836d16f HTTP/1.1","status": "200","body_bytes_sent":"880","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0705a695ce243f46eb2c3705da93f2f8"} experiment-1 | {"level":"info","message":"GET /experiments/35c329e7-6d7e-45b6-af36-44d9f836d16f 200 18ms","method":"GET","requestID":"0705a695ce243f46eb2c3705da93f2f8","responseTime":18,"status":200,"url":"/experiments/35c329e7-6d7e-45b6-af36-44d9f836d16f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e5682e60-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/00aa75e8-66b4-4623-b210-34bc16285a5b/signaling 200 10ms","method":"POST","requestID":"e5682e60-442a-11ef-8685-a1e9f27e6f28","responseTime":10,"status":200,"url":"/devices/00aa75e8-66b4-4623-b210-34bc16285a5b/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY1MH0.rbW1dZ6faHS-rRxuLq8u-QitAkNVd7rqmsC9LEHnfuY","level":"info","message":"auth send jwt","requestID":"726d0364855f812d08eea26a61161556"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"726d0364855f812d08eea26a61161556","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/35c329e7-6d7e-45b6-af36-44d9f836d16f","requestID":"726d0364855f812d08eea26a61161556"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":27,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:10Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":27,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.687363,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:10Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/35c329e7-6d7e-45b6-af36-44d9f836d16f","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"726d0364855f812d08eea26a61161556","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:http://localhost/experiments/35c329e7-6d7e-45b6-af36-44d9f836d16f","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213650,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY1MH0.rbW1dZ6faHS-rRxuLq8u-QitAkNVd7rqmsC9LEHnfuY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"726d0364855f812d08eea26a61161556","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/35c329e7-6d7e-45b6-af36-44d9f836d16f"},"level":"info","message":"Attempting to finish experiment","requestID":"726d0364855f812d08eea26a61161556"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"e56d5e80-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":28,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:10Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":28,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.81256,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:10Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/55bb12d6-7e71-4f24-8153-99c4e15b84de","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"e56d5e80-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"peerconnection:http://localhost/peerconnections/55bb12d6-7e71-4f24-8153-99c4e15b84de","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213650,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY1MH0.rbW1dZ6faHS-rRxuLq8u-QitAkNVd7rqmsC9LEHnfuY"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e56d5e80-442a-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/55bb12d6-7e71-4f24-8153-99c4e15b84de","device":"3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/55bb12d6-7e71-4f24-8153-99c4e15b84de","device":"00aa75e8-66b4-4623-b210-34bc16285a5b","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/55bb12d6-7e71-4f24-8153-99c4e15b84de' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/55bb12d6-7e71-4f24-8153-99c4e15b84de' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"55bb12d6-7e71-4f24-8153-99c4e15b84de","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5be56a6da659a015e70c3bf542bc6ff8","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"5be56a6da659a015e70c3bf542bc6ff8","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"36bf49e7a1e9e10c4eca33965f4ffc48","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/00aa75e8-66b4-4623-b210-34bc16285a5b"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/55bb12d6-7e71-4f24-8153-99c4e15b84de"}}},"level":"info","message":"received a callback","requestID":"5be56a6da659a015e70c3bf542bc6ff8"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"36bf49e7a1e9e10c4eca33965f4ffc48","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/00aa75e8-66b4-4623-b210-34bc16285a5b"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/55bb12d6-7e71-4f24-8153-99c4e15b84de"}}},"level":"info","message":"received a callback","requestID":"36bf49e7a1e9e10c4eca33965f4ffc48"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F55bb12d6-7e71-4f24-8153-99c4e15b84de': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F55bb12d6-7e71-4f24-8153-99c4e15b84de","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]},"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":null},"raw_response":{},"request_id":"29887223-e036-48e9-86ee-0d33fdbc7549","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213650.0597522} device-1 | {"data":{"peerconnection":"55bb12d6-7e71-4f24-8153-99c4e15b84de","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"47718db2-951e-4e35-9c6f-10005b1c41fe","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213650.0600615} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"e56d5e80-442a-11ef-8685-a1e9f27e6f28","responseTime":21,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"e56d5e80-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"DELETE /peerconnections/55bb12d6-7e71-4f24-8153-99c4e15b84de 204 55ms","method":"DELETE","requestID":"e56d5e80-442a-11ef-8685-a1e9f27e6f28","responseTime":55,"status":204,"url":"/peerconnections/55bb12d6-7e71-4f24-8153-99c4e15b84de"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/35c329e7-6d7e-45b6-af36-44d9f836d16f"},"level":"info","message":"Successfully finished experiment","requestID":"726d0364855f812d08eea26a61161556"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e5791e50-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":29,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:10Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"384033b0-fec4-4939-8623-31b7dc5822a7","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213650.1083524} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":29,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.970416,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:10Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"e5791e50-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e5791e50-442a-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e5791e50-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87/signaling 200 13ms","method":"POST","requestID":"e5791e50-442a-11ef-8685-a1e9f27e6f28","responseTime":13,"status":200,"url":"/devices/3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e57b8f50-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":30,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:10Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00aa75e8-66b4-4623-b210-34bc16285a5b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f9158f4d-42c6-4496-ab7f-f15e14dd2b7b","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213650.123714} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F35c329e7-6d7e-45b6-af36-44d9f836d16f': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F35c329e7-6d7e-45b6-af36-44d9f836d16f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]},"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":null},"raw_response":{},"request_id":"a5d0641a-e964-44b0-b85d-7f12ca79ca7d","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213650.124007} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":30,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.339821,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:10Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/00aa75e8-66b4-4623-b210-34bc16285a5b","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"e57b8f50-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/00aa75e8-66b4-4623-b210-34bc16285a5b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"e57b8f50-442a-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1162b6cc-aa66-45ad-aa2c-105a40af524e","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213650.1245763} authorization-1 | {"level":"info","message":"POST /relations/update 200 28ms","method":"POST","requestID":"726d0364855f812d08eea26a61161556","responseTime":28,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e57b8f50-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/00aa75e8-66b4-4623-b210-34bc16285a5b/signaling 200 13ms","method":"POST","requestID":"e57b8f50-442a-11ef-8685-a1e9f27e6f28","responseTime":13,"status":200,"url":"/devices/00aa75e8-66b4-4623-b210-34bc16285a5b/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/35c329e7-6d7e-45b6-af36-44d9f836d16f","requestID":"726d0364855f812d08eea26a61161556"} gateway-1 | {"time_local":"17/Jul/2024:10:54:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/35c329e7-6d7e-45b6-af36-44d9f836d16f HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.191","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"726d0364855f812d08eea26a61161556"} experiment-1 | {"level":"info","message":"DELETE /experiments/35c329e7-6d7e-45b6-af36-44d9f836d16f 204 186ms","method":"DELETE","requestID":"726d0364855f812d08eea26a61161556","responseTime":186,"status":204,"url":"/experiments/35c329e7-6d7e-45b6-af36-44d9f836d16f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 148ms","method":"POST","requestID":"5be56a6da659a015e70c3bf542bc6ff8","responseTime":148,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:54:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.151","http_referrer":"","http_user_agent":"node-fetch","requestID":"5be56a6da659a015e70c3bf542bc6ff8"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 147ms","method":"POST","requestID":"36bf49e7a1e9e10c4eca33965f4ffc48","responseTime":147,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:54:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.153","http_referrer":"","http_user_agent":"node-fetch","requestID":"36bf49e7a1e9e10c4eca33965f4ffc48"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY1MH0.rbW1dZ6faHS-rRxuLq8u-QitAkNVd7rqmsC9LEHnfuY","level":"info","message":"auth send jwt","requestID":"3b0139849c2c5247f87c27b46cad08b4"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3b0139849c2c5247f87c27b46cad08b4","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"3b0139849c2c5247f87c27b46cad08b4"} gateway-1 | {"time_local":"17/Jul/2024:10:54:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2646","request_time":"0.999","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"cbdc8fdc2ddf894f678681d7684b5d4d"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":31,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:10Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":31,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.95695,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:10Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"3b0139849c2c5247f87c27b46cad08b4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213650,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY1MH0.rbW1dZ6faHS-rRxuLq8u-QitAkNVd7rqmsC9LEHnfuY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3b0139849c2c5247f87c27b46cad08b4","responseTime":5,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"17/Jul/2024:10:54:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2647","request_time":"0.999","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"77f39d5044649de76cc90a0da7174355"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/00aa75e8-66b4-4623-b210-34bc16285a5b' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F283d8340-4f07-473a-aedb-b28f9f2f86e2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"84a32d46-1869-45f3-a5c1-43b42c927042","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213650.2269406} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"3b0139849c2c5247f87c27b46cad08b4","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/3e586dc0-22fc-4b39-8f9c-33fa2c5e6c87' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"72813bb8-28de-4692-9842-2ad1427a2a66","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213650.2326052} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"3b0139849c2c5247f87c27b46cad08b4","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F283d8340-4f07-473a-aedb-b28f9f2f86e2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"0a8a1641-21ff-42f9-9cca-677a4023abfd","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213650.242954} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"24e24cb4-4a06-454c-a65f-b54b21b2db0d","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213650.2430525} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"3b0139849c2c5247f87c27b46cad08b4","responseTime":12,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F283d8340-4f07-473a-aedb-b28f9f2f86e2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F283d8340-4f07-473a-aedb-b28f9f2f86e2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:10.242943027Z"}]},"request_id":"ac8cc045-393a-4ac0-a955-fd1dc6cc862c","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213650.2472627} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3b0139849c2c5247f87c27b46cad08b4","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"3b0139849c2c5247f87c27b46cad08b4"} gateway-1 | {"time_local":"17/Jul/2024:10:54:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.052","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3b0139849c2c5247f87c27b46cad08b4"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"3b0139849c2c5247f87c27b46cad08b4","responseTime":46,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY1MH0.rbW1dZ6faHS-rRxuLq8u-QitAkNVd7rqmsC9LEHnfuY","level":"info","message":"auth send jwt","requestID":"c1e176f69345b992913ba05f748b76f2"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c1e176f69345b992913ba05f748b76f2","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"c1e176f69345b992913ba05f748b76f2"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":32,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:10Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":32,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.713292,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:10Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"c1e176f69345b992913ba05f748b76f2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213650,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY1MH0.rbW1dZ6faHS-rRxuLq8u-QitAkNVd7rqmsC9LEHnfuY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c1e176f69345b992913ba05f748b76f2","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F78848ebb-1ece-4115-bf1b-b6b106b12c45","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"d10d0662-1724-4ea9-9c2c-3d4da6de7079","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213650.272375} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c1e176f69345b992913ba05f748b76f2","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4e609afa-d68a-45b3-b1cd-d81b40953ba6","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213650.2767355} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"c1e176f69345b992913ba05f748b76f2","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F78848ebb-1ece-4115-bf1b-b6b106b12c45","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"4d74afa8-256a-4613-9939-52494f22fb03","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213650.2935877} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"05c50c2b-d5b3-4244-9e69-992c3b3bcc99","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213650.2938511} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"c1e176f69345b992913ba05f748b76f2","responseTime":20,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F78848ebb-1ece-4115-bf1b-b6b106b12c45","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F78848ebb-1ece-4115-bf1b-b6b106b12c45","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:10.293571365Z"}]},"request_id":"b55deff5-7c77-430a-8dc0-80f130f90c7f","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213650.2995028} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c1e176f69345b992913ba05f748b76f2","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"c1e176f69345b992913ba05f748b76f2"} gateway-1 | {"time_local":"17/Jul/2024:10:54:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c1e176f69345b992913ba05f748b76f2"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"c1e176f69345b992913ba05f748b76f2","responseTime":47,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY1MH0.rbW1dZ6faHS-rRxuLq8u-QitAkNVd7rqmsC9LEHnfuY","level":"info","message":"auth send jwt","requestID":"fed6606e9a53ccfc8e37d426a8a20cac"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"fed6606e9a53ccfc8e37d426a8a20cac","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"fed6606e9a53ccfc8e37d426a8a20cac"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":33,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:10Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":33,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.980727,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:10Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/78848ebb-1ece-4115-bf1b-b6b106b12c45","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"fed6606e9a53ccfc8e37d426a8a20cac","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/78848ebb-1ece-4115-bf1b-b6b106b12c45","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213650,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY1MH0.rbW1dZ6faHS-rRxuLq8u-QitAkNVd7rqmsC9LEHnfuY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"fed6606e9a53ccfc8e37d426a8a20cac","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F78848ebb-1ece-4115-bf1b-b6b106b12c45","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F78848ebb-1ece-4115-bf1b-b6b106b12c45","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:10.293571365Z"}]},"request_id":"ba627be5-1736-424a-84c2-ac798a277f70","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213650.9419384} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"fed6606e9a53ccfc8e37d426a8a20cac","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4bf439cd-b3ea-4b06-9640-d80af68363e7","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213650.950179} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"fed6606e9a53ccfc8e37d426a8a20cac","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F78848ebb-1ece-4115-bf1b-b6b106b12c45","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F78848ebb-1ece-4115-bf1b-b6b106b12c45","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:10.293571365Z"}]},"request_id":"7d4098ed-6a5d-4bbd-82cc-5d0d4ee1b6ab","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213650.9707186} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"fed6606e9a53ccfc8e37d426a8a20cac","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"fed6606e9a53ccfc8e37d426a8a20cac"} gateway-1 | {"time_local":"17/Jul/2024:10:54:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/78848ebb-1ece-4115-bf1b-b6b106b12c45 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.080","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"fed6606e9a53ccfc8e37d426a8a20cac"} device-1 | {"level":"info","message":"PATCH /devices/78848ebb-1ece-4115-bf1b-b6b106b12c45 200 71ms","method":"PATCH","requestID":"fed6606e9a53ccfc8e37d426a8a20cac","responseTime":71,"status":200,"url":"/devices/78848ebb-1ece-4115-bf1b-b6b106b12c45"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY1MH0.rbW1dZ6faHS-rRxuLq8u-QitAkNVd7rqmsC9LEHnfuY","level":"info","message":"auth send jwt","requestID":"bef53f40019ff7cd2dea2f1fb203530c"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"bef53f40019ff7cd2dea2f1fb203530c","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"bef53f40019ff7cd2dea2f1fb203530c"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":34,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:10Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":34,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.788541,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:10Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/78848ebb-1ece-4115-bf1b-b6b106b12c45","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"bef53f40019ff7cd2dea2f1fb203530c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/78848ebb-1ece-4115-bf1b-b6b106b12c45","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213650,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY1MH0.rbW1dZ6faHS-rRxuLq8u-QitAkNVd7rqmsC9LEHnfuY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"bef53f40019ff7cd2dea2f1fb203530c","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"bef53f40019ff7cd2dea2f1fb203530c"} gateway-1 | {"time_local":"17/Jul/2024:10:54:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/78848ebb-1ece-4115-bf1b-b6b106b12c45/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.032","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"bef53f40019ff7cd2dea2f1fb203530c"} device-1 | {"level":"info","message":"POST /devices/78848ebb-1ece-4115-bf1b-b6b106b12c45/websocket 200 25ms","method":"POST","requestID":"bef53f40019ff7cd2dea2f1fb203530c","responseTime":25,"status":200,"url":"/devices/78848ebb-1ece-4115-bf1b-b6b106b12c45/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/78848ebb-1ece-4115-bf1b-b6b106b12c45' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d62921a9a5377051462abe179450d4d7","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"d62921a9a5377051462abe179450d4d7","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"17/Jul/2024:10:54:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/283d8340-4f07-473a-aedb-b28f9f2f86e2/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.006","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"d62921a9a5377051462abe179450d4d7"} device-1 | {"level":"info","message":"OPTIONS /devices/283d8340-4f07-473a-aedb-b28f9f2f86e2/websocket 200 2ms","method":"OPTIONS","requestID":"d62921a9a5377051462abe179450d4d7","responseTime":2,"status":200,"url":"/devices/283d8340-4f07-473a-aedb-b28f9f2f86e2/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY1Mn0.1Ha5quG8eJsvF4X2j2iIsC03b2MUfI2SE4Hy2NHNDBM","level":"info","message":"auth send jwt","requestID":"a69f3ec065c54ade979f9e74eeb292ba"} authentication-1 | {"level":"info","message":"GET /auth 200 8ms","method":"GET","requestID":"a69f3ec065c54ade979f9e74eeb292ba","responseTime":8,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"a69f3ec065c54ade979f9e74eeb292ba"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":35,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:12Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":35,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.286368,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:12Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/283d8340-4f07-473a-aedb-b28f9f2f86e2","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"a69f3ec065c54ade979f9e74eeb292ba","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/283d8340-4f07-473a-aedb-b28f9f2f86e2","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213652,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY1Mn0.1Ha5quG8eJsvF4X2j2iIsC03b2MUfI2SE4Hy2NHNDBM"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"a69f3ec065c54ade979f9e74eeb292ba","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"a69f3ec065c54ade979f9e74eeb292ba"} gateway-1 | {"time_local":"17/Jul/2024:10:54:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/283d8340-4f07-473a-aedb-b28f9f2f86e2/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.044","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"a69f3ec065c54ade979f9e74eeb292ba"} device-1 | {"level":"info","message":"POST /devices/283d8340-4f07-473a-aedb-b28f9f2f86e2/websocket 200 33ms","method":"POST","requestID":"a69f3ec065c54ade979f9e74eeb292ba","responseTime":33,"status":200,"url":"/devices/283d8340-4f07-473a-aedb-b28f9f2f86e2/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/283d8340-4f07-473a-aedb-b28f9f2f86e2' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY1Mn0.1Ha5quG8eJsvF4X2j2iIsC03b2MUfI2SE4Hy2NHNDBM","level":"info","message":"auth send jwt","requestID":"b65e9d2eff0295b9faf2531578766a67"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"b65e9d2eff0295b9faf2531578766a67","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b65e9d2eff0295b9faf2531578766a67"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":36,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:12Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":36,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.43747,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/283d8340-4f07-473a-aedb-b28f9f2f86e2","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"b65e9d2eff0295b9faf2531578766a67","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/283d8340-4f07-473a-aedb-b28f9f2f86e2","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213652,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY1Mn0.1Ha5quG8eJsvF4X2j2iIsC03b2MUfI2SE4Hy2NHNDBM"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b65e9d2eff0295b9faf2531578766a67","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F283d8340-4f07-473a-aedb-b28f9f2f86e2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F283d8340-4f07-473a-aedb-b28f9f2f86e2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:10.242943027Z"}]},"request_id":"9716af32-f682-42fe-84b2-b67ae686ec7a","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213652.395707} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b65e9d2eff0295b9faf2531578766a67","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b65e9d2eff0295b9faf2531578766a67"} device-1 | {"level":"info","message":"GET /devices/283d8340-4f07-473a-aedb-b28f9f2f86e2? 200 21ms","method":"GET","requestID":"b65e9d2eff0295b9faf2531578766a67","responseTime":21,"status":200,"url":"/devices/283d8340-4f07-473a-aedb-b28f9f2f86e2?"} gateway-1 | {"time_local":"17/Jul/2024:10:54:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/283d8340-4f07-473a-aedb-b28f9f2f86e2? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.028","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b65e9d2eff0295b9faf2531578766a67"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY1Mn0.1Ha5quG8eJsvF4X2j2iIsC03b2MUfI2SE4Hy2NHNDBM","level":"info","message":"auth send jwt","requestID":"308516c1179c0b80c15f27e0bb20a162"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"308516c1179c0b80c15f27e0bb20a162","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"308516c1179c0b80c15f27e0bb20a162"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":37,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:12Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":37,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.247876,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/78848ebb-1ece-4115-bf1b-b6b106b12c45","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"308516c1179c0b80c15f27e0bb20a162","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/78848ebb-1ece-4115-bf1b-b6b106b12c45","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213652,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY1Mn0.1Ha5quG8eJsvF4X2j2iIsC03b2MUfI2SE4Hy2NHNDBM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"308516c1179c0b80c15f27e0bb20a162","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F78848ebb-1ece-4115-bf1b-b6b106b12c45","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F78848ebb-1ece-4115-bf1b-b6b106b12c45","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:10.293571365Z"}]},"request_id":"7dd30229-afa9-4855-ad2a-c9d94c961e37","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213652.4281201} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"308516c1179c0b80c15f27e0bb20a162","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"308516c1179c0b80c15f27e0bb20a162"} gateway-1 | {"time_local":"17/Jul/2024:10:54:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/78848ebb-1ece-4115-bf1b-b6b106b12c45? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.032","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"308516c1179c0b80c15f27e0bb20a162"} device-1 | {"level":"info","message":"GET /devices/78848ebb-1ece-4115-bf1b-b6b106b12c45? 200 25ms","method":"GET","requestID":"308516c1179c0b80c15f27e0bb20a162","responseTime":25,"status":200,"url":"/devices/78848ebb-1ece-4115-bf1b-b6b106b12c45?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY1Mn0.1Ha5quG8eJsvF4X2j2iIsC03b2MUfI2SE4Hy2NHNDBM","level":"info","message":"auth send jwt","requestID":"144535114f7b93b5133c5e9d03f820a9"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"144535114f7b93b5133c5e9d03f820a9","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"144535114f7b93b5133c5e9d03f820a9"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":38,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:12Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":38,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.262198,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:12Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"144535114f7b93b5133c5e9d03f820a9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213652,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY1Mn0.1Ha5quG8eJsvF4X2j2iIsC03b2MUfI2SE4Hy2NHNDBM"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"144535114f7b93b5133c5e9d03f820a9","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/30696e06-5d73-4715-9dfa-52752c72c1ab"},"level":"info","message":"Attempting to run experiment","requestID":"144535114f7b93b5133c5e9d03f820a9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/30696e06-5d73-4715-9dfa-52752c72c1ab"},"level":"info","message":"Attempting to book experiment","requestID":"144535114f7b93b5133c5e9d03f820a9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/30696e06-5d73-4715-9dfa-52752c72c1ab"},"level":"info","message":"Successfully booked experiment","requestID":"144535114f7b93b5133c5e9d03f820a9"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e6e817a0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e6e88cd0-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":39,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:12Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":39,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.619418,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:12Z"} authorization-1 | {"client_addr":"127.0.0.1:60544","level":"info","msg":"Received request.","req_id":40,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/283d8340-4f07-473a-aedb-b28f9f2f86e2","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"e6e817a0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/283d8340-4f07-473a-aedb-b28f9f2f86e2","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213652,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY1Mn0.1Ha5quG8eJsvF4X2j2iIsC03b2MUfI2SE4Hy2NHNDBM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e6e817a0-442a-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60544","level":"info","msg":"Sent response.","req_id":40,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.058025,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/78848ebb-1ece-4115-bf1b-b6b106b12c45","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"e6e88cd0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/78848ebb-1ece-4115-bf1b-b6b106b12c45","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213652,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY1Mn0.1Ha5quG8eJsvF4X2j2iIsC03b2MUfI2SE4Hy2NHNDBM"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e6e88cd0-442a-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F283d8340-4f07-473a-aedb-b28f9f2f86e2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F283d8340-4f07-473a-aedb-b28f9f2f86e2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:10.242943027Z"}]},"request_id":"0c2992c2-9edf-4299-88b1-015bbb36cb6b","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213652.520009} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"e6e817a0-442a-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F78848ebb-1ece-4115-bf1b-b6b106b12c45","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F78848ebb-1ece-4115-bf1b-b6b106b12c45","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:10.293571365Z"}]},"request_id":"7e247346-3000-4f8f-bfa2-1315f6963729","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213652.523353} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"e6e88cd0-442a-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e6e817a0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/283d8340-4f07-473a-aedb-b28f9f2f86e2? 200 25ms","method":"GET","requestID":"e6e817a0-442a-11ef-8685-a1e9f27e6f28","responseTime":25,"status":200,"url":"/devices/283d8340-4f07-473a-aedb-b28f9f2f86e2?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e6e88cd0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/78848ebb-1ece-4115-bf1b-b6b106b12c45? 200 25ms","method":"GET","requestID":"e6e88cd0-442a-11ef-8685-a1e9f27e6f28","responseTime":25,"status":200,"url":"/devices/78848ebb-1ece-4115-bf1b-b6b106b12c45?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/30696e06-5d73-4715-9dfa-52752c72c1ab"},"level":"info","message":"Setting up experiment","requestID":"144535114f7b93b5133c5e9d03f820a9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/30696e06-5d73-4715-9dfa-52752c72c1ab"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"144535114f7b93b5133c5e9d03f820a9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/30696e06-5d73-4715-9dfa-52752c72c1ab"},"level":"info","message":"Successfully locked booking for experiment","requestID":"144535114f7b93b5133c5e9d03f820a9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/30696e06-5d73-4715-9dfa-52752c72c1ab"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"144535114f7b93b5133c5e9d03f820a9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/30696e06-5d73-4715-9dfa-52752c72c1ab"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"144535114f7b93b5133c5e9d03f820a9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/30696e06-5d73-4715-9dfa-52752c72c1ab"},"level":"info","message":"Attempting to update booking for experiment","requestID":"144535114f7b93b5133c5e9d03f820a9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/30696e06-5d73-4715-9dfa-52752c72c1ab"},"level":"info","message":"Successfully updated booking for experiment","requestID":"144535114f7b93b5133c5e9d03f820a9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/30696e06-5d73-4715-9dfa-52752c72c1ab"},"level":"info","message":"Successfully set up experiment","requestID":"144535114f7b93b5133c5e9d03f820a9"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e6f5ac30-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e6f66f80-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":41,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:12Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/30696e06-5d73-4715-9dfa-52752c72c1ab"},"level":"info","message":"Successfully running experiment","requestID":"144535114f7b93b5133c5e9d03f820a9"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e6f70bc0-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":41,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.308337,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:12Z"} authorization-1 | {"client_addr":"127.0.0.1:60544","level":"info","msg":"Received request.","req_id":42,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/283d8340-4f07-473a-aedb-b28f9f2f86e2","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"e6f5ac30-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/283d8340-4f07-473a-aedb-b28f9f2f86e2","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213652,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY1Mn0.1Ha5quG8eJsvF4X2j2iIsC03b2MUfI2SE4Hy2NHNDBM"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"e6f5ac30-442a-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60544","level":"info","msg":"Sent response.","req_id":42,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.179972,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/78848ebb-1ece-4115-bf1b-b6b106b12c45","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"e6f66f80-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/78848ebb-1ece-4115-bf1b-b6b106b12c45","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213652,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY1Mn0.1Ha5quG8eJsvF4X2j2iIsC03b2MUfI2SE4Hy2NHNDBM"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"e6f66f80-442a-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":43,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:12Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":43,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.545841,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:12Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F283d8340-4f07-473a-aedb-b28f9f2f86e2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"beff32c8-5dc4-4bb8-b388-079dd3a8692d","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213652.618272} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F283d8340-4f07-473a-aedb-b28f9f2f86e2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F283d8340-4f07-473a-aedb-b28f9f2f86e2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:10.242943027Z"}]},"request_id":"2c719e54-e0ee-405d-8cf2-79894d91ab19","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213652.6212099} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F78848ebb-1ece-4115-bf1b-b6b106b12c45","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F78848ebb-1ece-4115-bf1b-b6b106b12c45","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:10.293571365Z"}]},"request_id":"a3a9bb85-5fbd-4ca5-91ad-0117cdacbdb8","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213652.6235297} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/283d8340-4f07-473a-aedb-b28f9f2f86e2","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"e6f70bc0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/283d8340-4f07-473a-aedb-b28f9f2f86e2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 15ms","method":"POST","requestID":"e6f70bc0-442a-11ef-8685-a1e9f27e6f28","responseTime":15,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 11ms","method":"POST","requestID":"e6f5ac30-442a-11ef-8685-a1e9f27e6f28","responseTime":11,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"e6f66f80-442a-11ef-8685-a1e9f27e6f28","responseTime":9,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e6f70bc0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/283d8340-4f07-473a-aedb-b28f9f2f86e2/signaling 200 35ms","method":"POST","requestID":"e6f70bc0-442a-11ef-8685-a1e9f27e6f28","responseTime":35,"status":200,"url":"/devices/283d8340-4f07-473a-aedb-b28f9f2f86e2/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e6f5ac30-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/283d8340-4f07-473a-aedb-b28f9f2f86e2? 200 47ms","method":"GET","requestID":"e6f5ac30-442a-11ef-8685-a1e9f27e6f28","responseTime":47,"status":200,"url":"/devices/283d8340-4f07-473a-aedb-b28f9f2f86e2?"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F30696e06-5d73-4715-9dfa-52752c72c1ab#owner@http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F30696e06-5d73-4715-9dfa-52752c72c1ab","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"3ad47ce1-da43-4ee1-87a7-f9ee7bbdb78a","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213652.6423533} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e6f66f80-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/78848ebb-1ece-4115-bf1b-b6b106b12c45? 200 45ms","method":"GET","requestID":"e6f66f80-442a-11ef-8685-a1e9f27e6f28","responseTime":45,"status":200,"url":"/devices/78848ebb-1ece-4115-bf1b-b6b106b12c45?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e6fd9b70-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b8545244-481d-4e9f-8500-84c8be120ba0","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213652.6439028} authorization-1 | {"level":"info","message":"POST /relations/update 200 36ms","method":"POST","requestID":"144535114f7b93b5133c5e9d03f820a9","responseTime":36,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":44,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:12Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F78848ebb-1ece-4115-bf1b-b6b106b12c45","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"da766c5f-cbdd-43fe-bf59-3b8168e62621","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213652.6554933} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e6fed3f0-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":44,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.167976,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:12Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/78848ebb-1ece-4115-bf1b-b6b106b12c45","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"e6fd9b70-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/78848ebb-1ece-4115-bf1b-b6b106b12c45","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"e6fd9b70-442a-11ef-8685-a1e9f27e6f28","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":45,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:12Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e6fd9b70-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/78848ebb-1ece-4115-bf1b-b6b106b12c45/signaling 200 18ms","method":"POST","requestID":"e6fd9b70-442a-11ef-8685-a1e9f27e6f28","responseTime":18,"status":200,"url":"/devices/78848ebb-1ece-4115-bf1b-b6b106b12c45/signaling"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F283d8340-4f07-473a-aedb-b28f9f2f86e2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4ad4a476-bded-4270-ba13-28a193a99bfb","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213652.6651292} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":45,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.730579,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:12Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/283d8340-4f07-473a-aedb-b28f9f2f86e2","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"e6fed3f0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/283d8340-4f07-473a-aedb-b28f9f2f86e2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"e6fed3f0-442a-11ef-8685-a1e9f27e6f28","responseTime":10,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/30696e06-5d73-4715-9dfa-52752c72c1ab","user":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"144535114f7b93b5133c5e9d03f820a9"} gateway-1 | {"time_local":"17/Jul/2024:10:54:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"811","request_time":"0.229","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"144535114f7b93b5133c5e9d03f820a9"} experiment-1 | {"level":"info","message":"POST /experiments? 201 219ms","method":"POST","requestID":"144535114f7b93b5133c5e9d03f820a9","responseTime":219,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e6fed3f0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/283d8340-4f07-473a-aedb-b28f9f2f86e2/signaling 200 20ms","method":"POST","requestID":"e6fed3f0-442a-11ef-8685-a1e9f27e6f28","responseTime":20,"status":200,"url":"/devices/283d8340-4f07-473a-aedb-b28f9f2f86e2/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY1Mn0.1Ha5quG8eJsvF4X2j2iIsC03b2MUfI2SE4Hy2NHNDBM","level":"info","message":"auth send jwt","requestID":"d5d243aeb41d6e6f300a64c2936d89bc"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"d5d243aeb41d6e6f300a64c2936d89bc","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e7027d70-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d5d243aeb41d6e6f300a64c2936d89bc"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":46,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:12Z"} authorization-1 | {"client_addr":"127.0.0.1:60544","level":"info","msg":"Received request.","req_id":47,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:12Z"} authorization-1 | {"client_addr":"127.0.0.1:60544","level":"info","msg":"Sent response.","req_id":47,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.166968,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/283d8340-4f07-473a-aedb-b28f9f2f86e2","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"d5d243aeb41d6e6f300a64c2936d89bc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/283d8340-4f07-473a-aedb-b28f9f2f86e2","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213652,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY1Mn0.1Ha5quG8eJsvF4X2j2iIsC03b2MUfI2SE4Hy2NHNDBM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d5d243aeb41d6e6f300a64c2936d89bc","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F78848ebb-1ece-4115-bf1b-b6b106b12c45","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"32c0fc57-3b63-4b8a-af50-9387285ead8b","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213652.687201} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":46,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.841596,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:12Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/78848ebb-1ece-4115-bf1b-b6b106b12c45","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"e7027d70-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/78848ebb-1ece-4115-bf1b-b6b106b12c45","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"e7027d70-442a-11ef-8685-a1e9f27e6f28","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F283d8340-4f07-473a-aedb-b28f9f2f86e2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F283d8340-4f07-473a-aedb-b28f9f2f86e2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:10.242943027Z"}]},"request_id":"b4ccecf6-72cf-4fae-9045-8d6f0e9d5707","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213652.6931095} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e7027d70-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d5d243aeb41d6e6f300a64c2936d89bc","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices/78848ebb-1ece-4115-bf1b-b6b106b12c45/signaling 200 15ms","method":"POST","requestID":"e7027d70-442a-11ef-8685-a1e9f27e6f28","responseTime":15,"status":200,"url":"/devices/78848ebb-1ece-4115-bf1b-b6b106b12c45/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/30696e06-5d73-4715-9dfa-52752c72c1ab"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"144535114f7b93b5133c5e9d03f820a9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/30696e06-5d73-4715-9dfa-52752c72c1ab"},"level":"info","message":"Building connection plan","requestID":"144535114f7b93b5133c5e9d03f820a9"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"26fd4ada-0ac8-45e3-b6a5-e67d39a78d70"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"cc7159a4-56d9-44e9-a98a-9669e21f7e6a"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"abc2db49-9f51-4f86-b14d-74e1bd37d777"}]},"level":"info","message":"Built pairwise service configurations","requestID":"144535114f7b93b5133c5e9d03f820a9"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/283d8340-4f07-473a-aedb-b28f9f2f86e2"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/78848ebb-1ece-4115-bf1b-b6b106b12c45"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"144535114f7b93b5133c5e9d03f820a9"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d5d243aeb41d6e6f300a64c2936d89bc"} gateway-1 | {"time_local":"17/Jul/2024:10:54:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/283d8340-4f07-473a-aedb-b28f9f2f86e2? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d5d243aeb41d6e6f300a64c2936d89bc"} device-1 | {"level":"info","message":"GET /devices/283d8340-4f07-473a-aedb-b28f9f2f86e2? 200 17ms","method":"GET","requestID":"d5d243aeb41d6e6f300a64c2936d89bc","responseTime":17,"status":200,"url":"/devices/283d8340-4f07-473a-aedb-b28f9f2f86e2?"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"e705b1c0-442a-11ef-8685-a1e9f27e6f28"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY1Mn0.1Ha5quG8eJsvF4X2j2iIsC03b2MUfI2SE4Hy2NHNDBM","level":"info","message":"auth send jwt","requestID":"723d22f4774f4fbe522ca0e3dfd57696"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":48,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:12Z"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"723d22f4774f4fbe522ca0e3dfd57696","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":48,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.163086,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:12Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"723d22f4774f4fbe522ca0e3dfd57696"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"e705b1c0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213652,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY1Mn0.1Ha5quG8eJsvF4X2j2iIsC03b2MUfI2SE4Hy2NHNDBM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e705b1c0-442a-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":49,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:12Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":49,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.891192,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/78848ebb-1ece-4115-bf1b-b6b106b12c45","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"723d22f4774f4fbe522ca0e3dfd57696","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/78848ebb-1ece-4115-bf1b-b6b106b12c45","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213652,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY1Mn0.1Ha5quG8eJsvF4X2j2iIsC03b2MUfI2SE4Hy2NHNDBM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"723d22f4774f4fbe522ca0e3dfd57696","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F78848ebb-1ece-4115-bf1b-b6b106b12c45","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F78848ebb-1ece-4115-bf1b-b6b106b12c45","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:10.293571365Z"}]},"request_id":"89bae0c3-cda9-47df-b2da-94566357824b","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213652.71606} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"723d22f4774f4fbe522ca0e3dfd57696","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"723d22f4774f4fbe522ca0e3dfd57696"} gateway-1 | {"time_local":"17/Jul/2024:10:54:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/78848ebb-1ece-4115-bf1b-b6b106b12c45? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"723d22f4774f4fbe522ca0e3dfd57696"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"8ff9f3aa-38c0-4fbc-b2b0-04d7d62a3be5","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213652.7211277} device-1 | {"level":"info","message":"GET /devices/78848ebb-1ece-4115-bf1b-b6b106b12c45? 200 15ms","method":"GET","requestID":"723d22f4774f4fbe522ca0e3dfd57696","responseTime":15,"status":200,"url":"/devices/78848ebb-1ece-4115-bf1b-b6b106b12c45?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"26bb41da-008f-4e2f-9aa7-6010d1718af1","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213652.7217107} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"e705b1c0-442a-11ef-8685-a1e9f27e6f28","responseTime":9,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"e705b1c0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"e705b1c0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/f0b4bfa1-b719-4813-b1f4-fd9456b010c4'","requestID":"e705b1c0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/f0b4bfa1-b719-4813-b1f4-fd9456b010c4'","requestID":"e705b1c0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"e705b1c0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 39ms","method":"POST","requestID":"e705b1c0-442a-11ef-8685-a1e9f27e6f28","responseTime":39,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"e705b1c0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/f0b4bfa1-b719-4813-b1f4-fd9456b010c4","device":"283d8340-4f07-473a-aedb-b28f9f2f86e2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":false} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/30696e06-5d73-4715-9dfa-52752c72c1ab"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"144535114f7b93b5133c5e9d03f820a9"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e7108730-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"device":"283d8340-4f07-473a-aedb-b28f9f2f86e2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"283d8340-4f07-473a-aedb-b28f9f2f86e2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":50,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:12Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F283d8340-4f07-473a-aedb-b28f9f2f86e2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"33d8d379-49f1-48dc-b865-b1e694cf097a","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213652.777181} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":50,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.378349,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:12Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/283d8340-4f07-473a-aedb-b28f9f2f86e2","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"e7108730-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/283d8340-4f07-473a-aedb-b28f9f2f86e2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e7108730-442a-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e7108730-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/283d8340-4f07-473a-aedb-b28f9f2f86e2/signaling 200 11ms","method":"POST","requestID":"e7108730-442a-11ef-8685-a1e9f27e6f28","responseTime":11,"status":200,"url":"/devices/283d8340-4f07-473a-aedb-b28f9f2f86e2/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e7128300-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":51,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:12Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F78848ebb-1ece-4115-bf1b-b6b106b12c45","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6ca953d2-ff89-4bf7-9082-e5b079e1b87e","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213652.7899222} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":51,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.888409,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:12Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/78848ebb-1ece-4115-bf1b-b6b106b12c45","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"e7128300-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/78848ebb-1ece-4115-bf1b-b6b106b12c45","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e7128300-442a-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e7128300-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/78848ebb-1ece-4115-bf1b-b6b106b12c45/signaling 200 10ms","method":"POST","requestID":"e7128300-442a-11ef-8685-a1e9f27e6f28","responseTime":10,"status":200,"url":"/devices/78848ebb-1ece-4115-bf1b-b6b106b12c45/signaling"} device-1 | {"device":"78848ebb-1ece-4115-bf1b-b6b106b12c45","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"f0b4bfa1-b719-4813-b1f4-fd9456b010c4","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 6040958782885886835 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=msid-semantic: WMS\r\nm=application 9 DTLS/SCTP 5000\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:k4nx\r\na=ice-pwd:PcXRwYPj2vp3A03iuHn6FEfG\r\na=ice-options:trickle\r\na=fingerprint:sha-256 6F:58:FA:05:4A:8B:DB:E2:8B:46:71:78:3F:70:4A:23:9F:E7:8D:CE:5A:DE:93:EC:C5:0E:C4:9A:11:F9:47:A9\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"283d8340-4f07-473a-aedb-b28f9f2f86e2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:521694831 1 udp 2113937151 9a8fa2b7-5e3d-402e-97e4-c8aca9957f7d.local 50250 typ host generation 0 ufrag k4nx network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"283d8340-4f07-473a-aedb-b28f9f2f86e2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"283d8340-4f07-473a-aedb-b28f9f2f86e2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"content":{"candidate":"candidate:2352205692 1 udp 1677729535 141.24.211.56 50250 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag k4nx network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"283d8340-4f07-473a-aedb-b28f9f2f86e2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/f0b4bfa1-b719-4813-b1f4-fd9456b010c4' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f0b4bfa1-b719-4813-b1f4-fd9456b010c4","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"78848ebb-1ece-4115-bf1b-b6b106b12c45","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8271d4996eca4083e7753ce55a096bb6","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} device-1 | {"device":"78848ebb-1ece-4115-bf1b-b6b106b12c45","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"78848ebb-1ece-4115-bf1b-b6b106b12c45","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"8271d4996eca4083e7753ce55a096bb6","responseTime":1,"status":200,"url":"/auth"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/283d8340-4f07-473a-aedb-b28f9f2f86e2'"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/283d8340-4f07-473a-aedb-b28f9f2f86e2"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/78848ebb-1ece-4115-bf1b-b6b106b12c45"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/f0b4bfa1-b719-4813-b1f4-fd9456b010c4"}}},"level":"info","message":"received a callback","requestID":"8271d4996eca4083e7753ce55a096bb6"} device-1 | {"device":"283d8340-4f07-473a-aedb-b28f9f2f86e2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"8271d4996eca4083e7753ce55a096bb6","responseTime":7,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:54:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.011","http_referrer":"","http_user_agent":"node-fetch","requestID":"8271d4996eca4083e7753ce55a096bb6"} device-1 | {"data":{"peerconnection":"f0b4bfa1-b719-4813-b1f4-fd9456b010c4","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"78848ebb-1ece-4115-bf1b-b6b106b12c45","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"283d8340-4f07-473a-aedb-b28f9f2f86e2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"78848ebb-1ece-4115-bf1b-b6b106b12c45","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"f0b4bfa1-b719-4813-b1f4-fd9456b010c4","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"283d8340-4f07-473a-aedb-b28f9f2f86e2","deviceName":"JS Device 1","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/f0b4bfa1-b719-4813-b1f4-fd9456b010c4' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f0b4bfa1-b719-4813-b1f4-fd9456b010c4","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"789b401e8b29556d1aa0ff2bb9a118c1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"789b401e8b29556d1aa0ff2bb9a118c1","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/283d8340-4f07-473a-aedb-b28f9f2f86e2"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/78848ebb-1ece-4115-bf1b-b6b106b12c45"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/f0b4bfa1-b719-4813-b1f4-fd9456b010c4"}}},"level":"info","message":"received a callback","requestID":"789b401e8b29556d1aa0ff2bb9a118c1"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"e85c6820-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":52,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:14Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff0b4bfa1-b719-4813-b1f4-fd9456b010c4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"70cdb506-a74d-4db5-8159-21575fbabda3","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213654.953916} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":52,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":4.289058,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/f0b4bfa1-b719-4813-b1f4-fd9456b010c4","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"e85c6820-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/f0b4bfa1-b719-4813-b1f4-fd9456b010c4","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"e85c6820-442a-11ef-8685-a1e9f27e6f28","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"e85c6820-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /peerconnections/f0b4bfa1-b719-4813-b1f4-fd9456b010c4 200 16ms","method":"GET","requestID":"e85c6820-442a-11ef-8685-a1e9f27e6f28","responseTime":16,"status":200,"url":"/peerconnections/f0b4bfa1-b719-4813-b1f4-fd9456b010c4"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 50ms","method":"POST","requestID":"789b401e8b29556d1aa0ff2bb9a118c1","responseTime":50,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:54:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.057","http_referrer":"","http_user_agent":"node-fetch","requestID":"789b401e8b29556d1aa0ff2bb9a118c1"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e862d0c0-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":53,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:14Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F283d8340-4f07-473a-aedb-b28f9f2f86e2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1158eb69-66d8-4be9-b9c1-0030b62a6462","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213654.9948566} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":53,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.358423,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/283d8340-4f07-473a-aedb-b28f9f2f86e2","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"e862d0c0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/283d8340-4f07-473a-aedb-b28f9f2f86e2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"e862d0c0-442a-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e862d0c0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/283d8340-4f07-473a-aedb-b28f9f2f86e2/signaling 200 13ms","method":"POST","requestID":"e862d0c0-442a-11ef-8685-a1e9f27e6f28","responseTime":13,"status":200,"url":"/devices/283d8340-4f07-473a-aedb-b28f9f2f86e2/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e86568d0-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":54,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:15Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F78848ebb-1ece-4115-bf1b-b6b106b12c45","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4483c4e5-0268-4be8-bbec-ff21bf79bda8","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213655.0120409} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":54,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.692622,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/78848ebb-1ece-4115-bf1b-b6b106b12c45","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"e86568d0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/78848ebb-1ece-4115-bf1b-b6b106b12c45","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"e86568d0-442a-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e86568d0-442a-11ef-8685-a1e9f27e6f28"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY1NX0.jr7IqxznWP83nIaWGJJVseTClx_j4U1iLux-Nl31bM0","level":"info","message":"auth send jwt","requestID":"695b14af1e0f760bc9697d19ef870901"} device-1 | {"level":"info","message":"POST /devices/78848ebb-1ece-4115-bf1b-b6b106b12c45/signaling 200 15ms","method":"POST","requestID":"e86568d0-442a-11ef-8685-a1e9f27e6f28","responseTime":15,"status":200,"url":"/devices/78848ebb-1ece-4115-bf1b-b6b106b12c45/signaling"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"695b14af1e0f760bc9697d19ef870901","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/30696e06-5d73-4715-9dfa-52752c72c1ab","requestID":"695b14af1e0f760bc9697d19ef870901"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":55,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:15Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":55,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.213782,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/30696e06-5d73-4715-9dfa-52752c72c1ab","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"695b14af1e0f760bc9697d19ef870901","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:http://localhost/experiments/30696e06-5d73-4715-9dfa-52752c72c1ab","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213655,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY1NX0.jr7IqxznWP83nIaWGJJVseTClx_j4U1iLux-Nl31bM0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"695b14af1e0f760bc9697d19ef870901","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/30696e06-5d73-4715-9dfa-52752c72c1ab","requestID":"695b14af1e0f760bc9697d19ef870901"} gateway-1 | {"time_local":"17/Jul/2024:10:54:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/30696e06-5d73-4715-9dfa-52752c72c1ab HTTP/1.1","status": "200","body_bytes_sent":"884","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"695b14af1e0f760bc9697d19ef870901"} experiment-1 | {"level":"info","message":"GET /experiments/30696e06-5d73-4715-9dfa-52752c72c1ab 200 21ms","method":"GET","requestID":"695b14af1e0f760bc9697d19ef870901","responseTime":21,"status":200,"url":"/experiments/30696e06-5d73-4715-9dfa-52752c72c1ab"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY1NX0.jr7IqxznWP83nIaWGJJVseTClx_j4U1iLux-Nl31bM0","level":"info","message":"auth send jwt","requestID":"beb0881bbf5a436867c095f86d69adcd"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"beb0881bbf5a436867c095f86d69adcd","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/30696e06-5d73-4715-9dfa-52752c72c1ab","requestID":"beb0881bbf5a436867c095f86d69adcd"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":56,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:15Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":56,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.266692,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:15Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/30696e06-5d73-4715-9dfa-52752c72c1ab","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"beb0881bbf5a436867c095f86d69adcd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:http://localhost/experiments/30696e06-5d73-4715-9dfa-52752c72c1ab","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213655,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY1NX0.jr7IqxznWP83nIaWGJJVseTClx_j4U1iLux-Nl31bM0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"beb0881bbf5a436867c095f86d69adcd","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/30696e06-5d73-4715-9dfa-52752c72c1ab"},"level":"info","message":"Attempting to finish experiment","requestID":"beb0881bbf5a436867c095f86d69adcd"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"e8701730-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":57,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:15Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":57,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.380535,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:15Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/f0b4bfa1-b719-4813-b1f4-fd9456b010c4","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"e8701730-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"peerconnection:http://localhost/peerconnections/f0b4bfa1-b719-4813-b1f4-fd9456b010c4","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213655,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY1NX0.jr7IqxznWP83nIaWGJJVseTClx_j4U1iLux-Nl31bM0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e8701730-442a-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/f0b4bfa1-b719-4813-b1f4-fd9456b010c4","device":"283d8340-4f07-473a-aedb-b28f9f2f86e2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"78848ebb-1ece-4115-bf1b-b6b106b12c45","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"78848ebb-1ece-4115-bf1b-b6b106b12c45","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"78848ebb-1ece-4115-bf1b-b6b106b12c45","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/f0b4bfa1-b719-4813-b1f4-fd9456b010c4' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/f0b4bfa1-b719-4813-b1f4-fd9456b010c4' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f0b4bfa1-b719-4813-b1f4-fd9456b010c4","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0653f98c718e23036be37b8049a18956","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"0653f98c718e23036be37b8049a18956","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff0b4bfa1-b719-4813-b1f4-fd9456b010c4': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff0b4bfa1-b719-4813-b1f4-fd9456b010c4","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]},"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":null},"raw_response":{},"request_id":"434dc0a2-3551-4e1a-aa0c-f078afab9972","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213655.1010451} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"01ce107b0ebbda10f9e14fa1db926703","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c4e2e334-d3de-45bc-9e49-4d0e4220210c","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213655.1012936} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"01ce107b0ebbda10f9e14fa1db926703","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/283d8340-4f07-473a-aedb-b28f9f2f86e2"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/78848ebb-1ece-4115-bf1b-b6b106b12c45"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/f0b4bfa1-b719-4813-b1f4-fd9456b010c4"}}},"level":"info","message":"received a callback","requestID":"0653f98c718e23036be37b8049a18956"} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"e8701730-442a-11ef-8685-a1e9f27e6f28","responseTime":10,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/283d8340-4f07-473a-aedb-b28f9f2f86e2"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/78848ebb-1ece-4115-bf1b-b6b106b12c45"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/f0b4bfa1-b719-4813-b1f4-fd9456b010c4"}}},"level":"info","message":"received a callback","requestID":"01ce107b0ebbda10f9e14fa1db926703"} device-1 | {"data":{"peerconnection":"f0b4bfa1-b719-4813-b1f4-fd9456b010c4","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"e8701730-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"DELETE /peerconnections/f0b4bfa1-b719-4813-b1f4-fd9456b010c4 204 47ms","method":"DELETE","requestID":"e8701730-442a-11ef-8685-a1e9f27e6f28","responseTime":47,"status":204,"url":"/peerconnections/f0b4bfa1-b719-4813-b1f4-fd9456b010c4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/30696e06-5d73-4715-9dfa-52752c72c1ab"},"level":"info","message":"Successfully finished experiment","requestID":"beb0881bbf5a436867c095f86d69adcd"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e87b88e0-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":58,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:15Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F283d8340-4f07-473a-aedb-b28f9f2f86e2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"99d1def0-bc71-4d91-aa4a-c793d661571e","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213655.157599} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":58,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.200809,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/283d8340-4f07-473a-aedb-b28f9f2f86e2","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"e87b88e0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/283d8340-4f07-473a-aedb-b28f9f2f86e2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"e87b88e0-442a-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e87b88e0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/283d8340-4f07-473a-aedb-b28f9f2f86e2/signaling 200 14ms","method":"POST","requestID":"e87b88e0-442a-11ef-8685-a1e9f27e6f28","responseTime":14,"status":200,"url":"/devices/283d8340-4f07-473a-aedb-b28f9f2f86e2/signaling"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F30696e06-5d73-4715-9dfa-52752c72c1ab': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F30696e06-5d73-4715-9dfa-52752c72c1ab","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]},"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":null},"raw_response":{},"request_id":"39faf5ab-1bff-4dcf-a6ee-b0fe62959eb2","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213655.1656663} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"82af5c6c-d628-4099-8805-c454d694f5a3","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213655.1660757} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e87e4800-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"beb0881bbf5a436867c095f86d69adcd","responseTime":20,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":59,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:15Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F78848ebb-1ece-4115-bf1b-b6b106b12c45","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"757a492f-cc2f-4ef9-8c58-122053a348ed","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213655.172574} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":59,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.254848,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/78848ebb-1ece-4115-bf1b-b6b106b12c45","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"e87e4800-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/78848ebb-1ece-4115-bf1b-b6b106b12c45","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e87e4800-442a-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e87e4800-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/78848ebb-1ece-4115-bf1b-b6b106b12c45/signaling 200 10ms","method":"POST","requestID":"e87e4800-442a-11ef-8685-a1e9f27e6f28","responseTime":10,"status":200,"url":"/devices/78848ebb-1ece-4115-bf1b-b6b106b12c45/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/30696e06-5d73-4715-9dfa-52752c72c1ab","requestID":"beb0881bbf5a436867c095f86d69adcd"} gateway-1 | {"time_local":"17/Jul/2024:10:54:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/30696e06-5d73-4715-9dfa-52752c72c1ab HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.194","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"beb0881bbf5a436867c095f86d69adcd"} gateway-1 | {"time_local":"17/Jul/2024:10:54:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2597","request_time":"4.220","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"cbe5b361888419e56b8c0111ce6772c8"} experiment-1 | {"level":"info","message":"DELETE /experiments/30696e06-5d73-4715-9dfa-52752c72c1ab 204 190ms","method":"DELETE","requestID":"beb0881bbf5a436867c095f86d69adcd","responseTime":190,"status":204,"url":"/experiments/30696e06-5d73-4715-9dfa-52752c72c1ab"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 145ms","method":"POST","requestID":"0653f98c718e23036be37b8049a18956","responseTime":145,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY1NX0.jr7IqxznWP83nIaWGJJVseTClx_j4U1iLux-Nl31bM0","level":"info","message":"auth send jwt","requestID":"54ce9b449d89f5f2106eceb41136d0f2"} gateway-1 | {"time_local":"17/Jul/2024:10:54:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.149","http_referrer":"","http_user_agent":"node-fetch","requestID":"0653f98c718e23036be37b8049a18956"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"54ce9b449d89f5f2106eceb41136d0f2","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 145ms","method":"POST","requestID":"01ce107b0ebbda10f9e14fa1db926703","responseTime":145,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:54:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.149","http_referrer":"","http_user_agent":"node-fetch","requestID":"01ce107b0ebbda10f9e14fa1db926703"} gateway-1 | {"time_local":"17/Jul/2024:10:54:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2506","request_time":"2.897","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"99a9f3b098307ebbffe435aa3621a1d1"} device-1 | {"level":"info","message":"postDevices called","requestID":"54ce9b449d89f5f2106eceb41136d0f2"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/78848ebb-1ece-4115-bf1b-b6b106b12c45' closed"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":60,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:15Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":60,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.356279,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:15Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"54ce9b449d89f5f2106eceb41136d0f2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213655,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY1NX0.jr7IqxznWP83nIaWGJJVseTClx_j4U1iLux-Nl31bM0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"54ce9b449d89f5f2106eceb41136d0f2","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/283d8340-4f07-473a-aedb-b28f9f2f86e2' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd014b223-7feb-4b0f-85f3-b266427c6f43","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"8b3b329f-833e-4ea4-9521-379a1861e91c","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213655.274074} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"54ce9b449d89f5f2106eceb41136d0f2","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b3fcaed3-66d5-47c7-a558-652da6af6f5e","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213655.2805889} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"54ce9b449d89f5f2106eceb41136d0f2","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd014b223-7feb-4b0f-85f3-b266427c6f43","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"4f8b865a-a129-4c6f-b9c1-e1f6fabf169a","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213655.2908907} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"64218b9a-e8c0-48d9-b1eb-dc668db75261","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213655.2910786} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"54ce9b449d89f5f2106eceb41136d0f2","responseTime":12,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd014b223-7feb-4b0f-85f3-b266427c6f43","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd014b223-7feb-4b0f-85f3-b266427c6f43","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:15.290876792Z"}]},"request_id":"2ea7500e-3759-4a68-b2b6-9bee54105f1e","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213655.2960482} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"54ce9b449d89f5f2106eceb41136d0f2","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"54ce9b449d89f5f2106eceb41136d0f2"} gateway-1 | {"time_local":"17/Jul/2024:10:54:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.054","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"54ce9b449d89f5f2106eceb41136d0f2"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"54ce9b449d89f5f2106eceb41136d0f2","responseTime":47,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY1NX0.jr7IqxznWP83nIaWGJJVseTClx_j4U1iLux-Nl31bM0","level":"info","message":"auth send jwt","requestID":"31814a49454708634d0473cbd7b97912"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"31814a49454708634d0473cbd7b97912","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"31814a49454708634d0473cbd7b97912"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":61,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:15Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":61,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.754843,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:15Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"31814a49454708634d0473cbd7b97912","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213655,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY1NX0.jr7IqxznWP83nIaWGJJVseTClx_j4U1iLux-Nl31bM0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"31814a49454708634d0473cbd7b97912","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2ccff99-b69e-4d24-a1e3-c6803a77e0f2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"0f0b67ec-0da4-454a-b14c-b96cefefa45d","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213655.3283129} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"31814a49454708634d0473cbd7b97912","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c8a64ab8-1342-4fce-ab5b-df487eeb1f9b","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213655.333489} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"31814a49454708634d0473cbd7b97912","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2ccff99-b69e-4d24-a1e3-c6803a77e0f2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"e50c57e1-8ece-4d08-a939-fd385b0352dd","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213655.344273} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4b172ddb-ee95-481e-aa41-8c17ba485f7a","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213655.3445027} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"31814a49454708634d0473cbd7b97912","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2ccff99-b69e-4d24-a1e3-c6803a77e0f2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2ccff99-b69e-4d24-a1e3-c6803a77e0f2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:15.344253701Z"}]},"request_id":"e5a7db83-fd6b-49cd-aa43-d9f38b6927fa","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213655.3499784} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"31814a49454708634d0473cbd7b97912","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"31814a49454708634d0473cbd7b97912"} device-1 | {"level":"info","message":"POST /devices? 201 48ms","method":"POST","requestID":"31814a49454708634d0473cbd7b97912","responseTime":48,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"17/Jul/2024:10:54:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.053","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"31814a49454708634d0473cbd7b97912"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY1NX0.jr7IqxznWP83nIaWGJJVseTClx_j4U1iLux-Nl31bM0","level":"info","message":"auth send jwt","requestID":"a94b2c61018ab9bb7e51acf3162d89ec"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a94b2c61018ab9bb7e51acf3162d89ec","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"a94b2c61018ab9bb7e51acf3162d89ec"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":62,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:15Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":62,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.208455,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:15Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/d014b223-7feb-4b0f-85f3-b266427c6f43","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"a94b2c61018ab9bb7e51acf3162d89ec","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/d014b223-7feb-4b0f-85f3-b266427c6f43","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213655,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY1NX0.jr7IqxznWP83nIaWGJJVseTClx_j4U1iLux-Nl31bM0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"a94b2c61018ab9bb7e51acf3162d89ec","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd014b223-7feb-4b0f-85f3-b266427c6f43","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd014b223-7feb-4b0f-85f3-b266427c6f43","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:15.290876792Z"}]},"request_id":"81cbf734-48a4-408f-b7b5-881aed671586","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213655.845967} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a94b2c61018ab9bb7e51acf3162d89ec","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b3d151ce-5289-4ee1-961a-bd3263878e2c","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213655.8540664} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"a94b2c61018ab9bb7e51acf3162d89ec","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd014b223-7feb-4b0f-85f3-b266427c6f43","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd014b223-7feb-4b0f-85f3-b266427c6f43","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:15.290876792Z"}]},"request_id":"3628db96-4011-46b8-bcbf-f45038523ee6","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213655.8692117} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a94b2c61018ab9bb7e51acf3162d89ec","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"a94b2c61018ab9bb7e51acf3162d89ec"} gateway-1 | {"time_local":"17/Jul/2024:10:54:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/d014b223-7feb-4b0f-85f3-b266427c6f43 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.047","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"a94b2c61018ab9bb7e51acf3162d89ec"} device-1 | {"level":"info","message":"PATCH /devices/d014b223-7feb-4b0f-85f3-b266427c6f43 200 42ms","method":"PATCH","requestID":"a94b2c61018ab9bb7e51acf3162d89ec","responseTime":42,"status":200,"url":"/devices/d014b223-7feb-4b0f-85f3-b266427c6f43"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY1NX0.jr7IqxznWP83nIaWGJJVseTClx_j4U1iLux-Nl31bM0","level":"info","message":"auth send jwt","requestID":"1bbaa04c2b968a759e0fc3bf8d4bdb54"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1bbaa04c2b968a759e0fc3bf8d4bdb54","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"1bbaa04c2b968a759e0fc3bf8d4bdb54"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":63,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:15Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":63,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.253876,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:15Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/d014b223-7feb-4b0f-85f3-b266427c6f43","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1bbaa04c2b968a759e0fc3bf8d4bdb54","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/d014b223-7feb-4b0f-85f3-b266427c6f43","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213655,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY1NX0.jr7IqxznWP83nIaWGJJVseTClx_j4U1iLux-Nl31bM0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"1bbaa04c2b968a759e0fc3bf8d4bdb54","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"1bbaa04c2b968a759e0fc3bf8d4bdb54"} gateway-1 | {"time_local":"17/Jul/2024:10:54:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/d014b223-7feb-4b0f-85f3-b266427c6f43/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.028","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"1bbaa04c2b968a759e0fc3bf8d4bdb54"} device-1 | {"level":"info","message":"POST /devices/d014b223-7feb-4b0f-85f3-b266427c6f43/websocket 200 24ms","method":"POST","requestID":"1bbaa04c2b968a759e0fc3bf8d4bdb54","responseTime":24,"status":200,"url":"/devices/d014b223-7feb-4b0f-85f3-b266427c6f43/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/d014b223-7feb-4b0f-85f3-b266427c6f43' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"39ff25a44faa8be8f4e519b16daa8973","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"39ff25a44faa8be8f4e519b16daa8973","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"17/Jul/2024:10:54:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/f2ccff99-b69e-4d24-a1e3-c6803a77e0f2/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"39ff25a44faa8be8f4e519b16daa8973"} device-1 | {"level":"info","message":"OPTIONS /devices/f2ccff99-b69e-4d24-a1e3-c6803a77e0f2/websocket 200 1ms","method":"OPTIONS","requestID":"39ff25a44faa8be8f4e519b16daa8973","responseTime":1,"status":200,"url":"/devices/f2ccff99-b69e-4d24-a1e3-c6803a77e0f2/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY1N30.nV1dyy__Vm9X4jy5n1kZlfnmfyQorPAOsWFYPXCoMz0","level":"info","message":"auth send jwt","requestID":"ffbc87aba49fa18659fe043ee183dfb4"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"ffbc87aba49fa18659fe043ee183dfb4","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"ffbc87aba49fa18659fe043ee183dfb4"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":64,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:17Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":64,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.568717,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:17Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f2ccff99-b69e-4d24-a1e3-c6803a77e0f2","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"ffbc87aba49fa18659fe043ee183dfb4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/f2ccff99-b69e-4d24-a1e3-c6803a77e0f2","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213657,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY1N30.nV1dyy__Vm9X4jy5n1kZlfnmfyQorPAOsWFYPXCoMz0"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"ffbc87aba49fa18659fe043ee183dfb4","responseTime":11,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"ffbc87aba49fa18659fe043ee183dfb4"} gateway-1 | {"time_local":"17/Jul/2024:10:54:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/f2ccff99-b69e-4d24-a1e3-c6803a77e0f2/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.040","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"ffbc87aba49fa18659fe043ee183dfb4"} device-1 | {"level":"info","message":"POST /devices/f2ccff99-b69e-4d24-a1e3-c6803a77e0f2/websocket 200 31ms","method":"POST","requestID":"ffbc87aba49fa18659fe043ee183dfb4","responseTime":31,"status":200,"url":"/devices/f2ccff99-b69e-4d24-a1e3-c6803a77e0f2/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/f2ccff99-b69e-4d24-a1e3-c6803a77e0f2' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY1N30.nV1dyy__Vm9X4jy5n1kZlfnmfyQorPAOsWFYPXCoMz0","level":"info","message":"auth send jwt","requestID":"91ed34d1aac2f8a98810cb8b7e0b8c7d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"91ed34d1aac2f8a98810cb8b7e0b8c7d","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"91ed34d1aac2f8a98810cb8b7e0b8c7d"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":65,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:17Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":65,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.779338,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d014b223-7feb-4b0f-85f3-b266427c6f43","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"91ed34d1aac2f8a98810cb8b7e0b8c7d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/d014b223-7feb-4b0f-85f3-b266427c6f43","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213657,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY1N30.nV1dyy__Vm9X4jy5n1kZlfnmfyQorPAOsWFYPXCoMz0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"91ed34d1aac2f8a98810cb8b7e0b8c7d","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd014b223-7feb-4b0f-85f3-b266427c6f43","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd014b223-7feb-4b0f-85f3-b266427c6f43","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:15.290876792Z"}]},"request_id":"87e3a959-a240-467c-b496-56edfd15e4e2","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213657.427277} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"91ed34d1aac2f8a98810cb8b7e0b8c7d","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"91ed34d1aac2f8a98810cb8b7e0b8c7d"} gateway-1 | {"time_local":"17/Jul/2024:10:54:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/d014b223-7feb-4b0f-85f3-b266427c6f43? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"91ed34d1aac2f8a98810cb8b7e0b8c7d"} device-1 | {"level":"info","message":"GET /devices/d014b223-7feb-4b0f-85f3-b266427c6f43? 200 17ms","method":"GET","requestID":"91ed34d1aac2f8a98810cb8b7e0b8c7d","responseTime":17,"status":200,"url":"/devices/d014b223-7feb-4b0f-85f3-b266427c6f43?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY1N30.nV1dyy__Vm9X4jy5n1kZlfnmfyQorPAOsWFYPXCoMz0","level":"info","message":"auth send jwt","requestID":"5ee884ec4e2238c533d7489021d5c5cf"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5ee884ec4e2238c533d7489021d5c5cf","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5ee884ec4e2238c533d7489021d5c5cf"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":66,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:17Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":66,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.056771,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f2ccff99-b69e-4d24-a1e3-c6803a77e0f2","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"5ee884ec4e2238c533d7489021d5c5cf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/f2ccff99-b69e-4d24-a1e3-c6803a77e0f2","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213657,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY1N30.nV1dyy__Vm9X4jy5n1kZlfnmfyQorPAOsWFYPXCoMz0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5ee884ec4e2238c533d7489021d5c5cf","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2ccff99-b69e-4d24-a1e3-c6803a77e0f2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2ccff99-b69e-4d24-a1e3-c6803a77e0f2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:15.344253701Z"}]},"request_id":"8644aeb5-95b3-48cd-82f4-0b1e4a965f46","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213657.4539456} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5ee884ec4e2238c533d7489021d5c5cf","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5ee884ec4e2238c533d7489021d5c5cf"} gateway-1 | {"time_local":"17/Jul/2024:10:54:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f2ccff99-b69e-4d24-a1e3-c6803a77e0f2? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5ee884ec4e2238c533d7489021d5c5cf"} device-1 | {"level":"info","message":"GET /devices/f2ccff99-b69e-4d24-a1e3-c6803a77e0f2? 200 19ms","method":"GET","requestID":"5ee884ec4e2238c533d7489021d5c5cf","responseTime":19,"status":200,"url":"/devices/f2ccff99-b69e-4d24-a1e3-c6803a77e0f2?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY1N30.nV1dyy__Vm9X4jy5n1kZlfnmfyQorPAOsWFYPXCoMz0","level":"info","message":"auth send jwt","requestID":"6866142c9f79ce41850e3278b19bb3d7"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6866142c9f79ce41850e3278b19bb3d7","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"6866142c9f79ce41850e3278b19bb3d7"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":67,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:17Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":67,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.208373,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:17Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"6866142c9f79ce41850e3278b19bb3d7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213657,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY1N30.nV1dyy__Vm9X4jy5n1kZlfnmfyQorPAOsWFYPXCoMz0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"6866142c9f79ce41850e3278b19bb3d7","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/793ec7d6-d1da-4ec2-b0ce-5672f246ba50"},"level":"info","message":"Attempting to run experiment","requestID":"6866142c9f79ce41850e3278b19bb3d7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/793ec7d6-d1da-4ec2-b0ce-5672f246ba50"},"level":"info","message":"Attempting to book experiment","requestID":"6866142c9f79ce41850e3278b19bb3d7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/793ec7d6-d1da-4ec2-b0ce-5672f246ba50"},"level":"info","message":"Successfully booked experiment","requestID":"6866142c9f79ce41850e3278b19bb3d7"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e9e52b00-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e9e57920-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":68,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:17Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":68,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.990751,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:17Z"} authorization-1 | {"client_addr":"127.0.0.1:60544","level":"info","msg":"Received request.","req_id":69,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d014b223-7feb-4b0f-85f3-b266427c6f43","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"e9e52b00-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/d014b223-7feb-4b0f-85f3-b266427c6f43","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213657,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY1N30.nV1dyy__Vm9X4jy5n1kZlfnmfyQorPAOsWFYPXCoMz0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e9e52b00-442a-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60544","level":"info","msg":"Sent response.","req_id":69,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.182954,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f2ccff99-b69e-4d24-a1e3-c6803a77e0f2","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"e9e57920-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/f2ccff99-b69e-4d24-a1e3-c6803a77e0f2","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213657,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY1N30.nV1dyy__Vm9X4jy5n1kZlfnmfyQorPAOsWFYPXCoMz0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e9e57920-442a-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd014b223-7feb-4b0f-85f3-b266427c6f43","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd014b223-7feb-4b0f-85f3-b266427c6f43","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:15.290876792Z"}]},"request_id":"f66320fa-068d-4bb7-a01d-70adec438b3c","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213657.5334845} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"e9e52b00-442a-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2ccff99-b69e-4d24-a1e3-c6803a77e0f2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2ccff99-b69e-4d24-a1e3-c6803a77e0f2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:15.344253701Z"}]},"request_id":"85aa9806-80e6-44d4-8528-d440d9e10274","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213657.5353394} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"e9e57920-442a-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e9e52b00-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/d014b223-7feb-4b0f-85f3-b266427c6f43? 200 24ms","method":"GET","requestID":"e9e52b00-442a-11ef-8685-a1e9f27e6f28","responseTime":24,"status":200,"url":"/devices/d014b223-7feb-4b0f-85f3-b266427c6f43?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e9e57920-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/f2ccff99-b69e-4d24-a1e3-c6803a77e0f2? 200 24ms","method":"GET","requestID":"e9e57920-442a-11ef-8685-a1e9f27e6f28","responseTime":24,"status":200,"url":"/devices/f2ccff99-b69e-4d24-a1e3-c6803a77e0f2?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/793ec7d6-d1da-4ec2-b0ce-5672f246ba50"},"level":"info","message":"Setting up experiment","requestID":"6866142c9f79ce41850e3278b19bb3d7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/793ec7d6-d1da-4ec2-b0ce-5672f246ba50"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"6866142c9f79ce41850e3278b19bb3d7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/793ec7d6-d1da-4ec2-b0ce-5672f246ba50"},"level":"info","message":"Successfully locked booking for experiment","requestID":"6866142c9f79ce41850e3278b19bb3d7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/793ec7d6-d1da-4ec2-b0ce-5672f246ba50"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"6866142c9f79ce41850e3278b19bb3d7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/793ec7d6-d1da-4ec2-b0ce-5672f246ba50"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"6866142c9f79ce41850e3278b19bb3d7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/793ec7d6-d1da-4ec2-b0ce-5672f246ba50"},"level":"info","message":"Attempting to update booking for experiment","requestID":"6866142c9f79ce41850e3278b19bb3d7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/793ec7d6-d1da-4ec2-b0ce-5672f246ba50"},"level":"info","message":"Successfully updated booking for experiment","requestID":"6866142c9f79ce41850e3278b19bb3d7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/793ec7d6-d1da-4ec2-b0ce-5672f246ba50"},"level":"info","message":"Successfully set up experiment","requestID":"6866142c9f79ce41850e3278b19bb3d7"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e9f29880-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e9f2e6a0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e9f35bd0-442a-11ef-8685-a1e9f27e6f28"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/793ec7d6-d1da-4ec2-b0ce-5672f246ba50"},"level":"info","message":"Successfully running experiment","requestID":"6866142c9f79ce41850e3278b19bb3d7"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":70,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:17Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":70,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.109139,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:17Z"} authorization-1 | {"client_addr":"127.0.0.1:60544","level":"info","msg":"Received request.","req_id":71,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d014b223-7feb-4b0f-85f3-b266427c6f43","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"e9f29880-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/d014b223-7feb-4b0f-85f3-b266427c6f43","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213657,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY1N30.nV1dyy__Vm9X4jy5n1kZlfnmfyQorPAOsWFYPXCoMz0"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"e9f29880-442a-11ef-8685-a1e9f27e6f28","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60544","level":"info","msg":"Sent response.","req_id":71,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.179,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f2ccff99-b69e-4d24-a1e3-c6803a77e0f2","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"e9f2e6a0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/f2ccff99-b69e-4d24-a1e3-c6803a77e0f2","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213657,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY1N30.nV1dyy__Vm9X4jy5n1kZlfnmfyQorPAOsWFYPXCoMz0"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"e9f2e6a0-442a-11ef-8685-a1e9f27e6f28","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2ccff99-b69e-4d24-a1e3-c6803a77e0f2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2ccff99-b69e-4d24-a1e3-c6803a77e0f2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:15.344253701Z"}]},"request_id":"1f8d0878-d7c0-4076-975e-b93617bddb4c","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213657.632932} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e9f2e6a0-442a-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:46882","level":"info","msg":"Received request.","req_id":72,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:17Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd014b223-7feb-4b0f-85f3-b266427c6f43","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d726dc0d-c469-473a-b430-09653d39c68a","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213657.6353295} authorization-1 | {"client_addr":"127.0.0.1:46882","level":"info","msg":"Sent response.","req_id":72,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.754562,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:17Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e9f2e6a0-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d014b223-7feb-4b0f-85f3-b266427c6f43","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"e9f35bd0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d014b223-7feb-4b0f-85f3-b266427c6f43","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} device-1 | {"level":"info","message":"GET /devices/f2ccff99-b69e-4d24-a1e3-c6803a77e0f2? 200 28ms","method":"GET","requestID":"e9f2e6a0-442a-11ef-8685-a1e9f27e6f28","responseTime":28,"status":200,"url":"/devices/f2ccff99-b69e-4d24-a1e3-c6803a77e0f2?"} authorization-1 | {"level":"info","message":"POST /authorize 200 20ms","method":"POST","requestID":"e9f35bd0-442a-11ef-8685-a1e9f27e6f28","responseTime":20,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd014b223-7feb-4b0f-85f3-b266427c6f43","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd014b223-7feb-4b0f-85f3-b266427c6f43","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:15.290876792Z"}]},"request_id":"afa5dbe1-3edb-4505-bbe5-c48d471729d2","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213657.637334} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"e9f29880-442a-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e9f35bd0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/d014b223-7feb-4b0f-85f3-b266427c6f43/signaling 200 30ms","method":"POST","requestID":"e9f35bd0-442a-11ef-8685-a1e9f27e6f28","responseTime":30,"status":200,"url":"/devices/d014b223-7feb-4b0f-85f3-b266427c6f43/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e9f29880-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/d014b223-7feb-4b0f-85f3-b266427c6f43? 200 37ms","method":"GET","requestID":"e9f29880-442a-11ef-8685-a1e9f27e6f28","responseTime":37,"status":200,"url":"/devices/d014b223-7feb-4b0f-85f3-b266427c6f43?"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F793ec7d6-d1da-4ec2-b0ce-5672f246ba50#owner@http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F793ec7d6-d1da-4ec2-b0ce-5672f246ba50","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"acedd33c-1010-44c4-bbbb-df84c875521e","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213657.6442873} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4e359433-b569-4ada-b278-ffb40f74e3d2","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213657.64482} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e9f864e0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e9f8b300-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"6866142c9f79ce41850e3278b19bb3d7","responseTime":23,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":73,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:17Z"} authorization-1 | {"client_addr":"127.0.0.1:60544","level":"info","msg":"Received request.","req_id":74,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:17Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2ccff99-b69e-4d24-a1e3-c6803a77e0f2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2481f570-fa29-4433-b735-e91079921843","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213657.6537943} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":73,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.975399,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f2ccff99-b69e-4d24-a1e3-c6803a77e0f2","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"e9f864e0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f2ccff99-b69e-4d24-a1e3-c6803a77e0f2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"e9f864e0-442a-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd014b223-7feb-4b0f-85f3-b266427c6f43","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"19796370-7839-449d-8b1d-e63cc7b49d3f","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213657.6562366} authorization-1 | {"client_addr":"127.0.0.1:60544","level":"info","msg":"Sent response.","req_id":74,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.13076,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d014b223-7feb-4b0f-85f3-b266427c6f43","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"e9f8b300-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d014b223-7feb-4b0f-85f3-b266427c6f43","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"e9f8b300-442a-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/793ec7d6-d1da-4ec2-b0ce-5672f246ba50","user":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"6866142c9f79ce41850e3278b19bb3d7"} experiment-1 | {"level":"info","message":"POST /experiments? 201 190ms","method":"POST","requestID":"6866142c9f79ce41850e3278b19bb3d7","responseTime":190,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"17/Jul/2024:10:54:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"811","request_time":"0.196","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6866142c9f79ce41850e3278b19bb3d7"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e9f864e0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/f2ccff99-b69e-4d24-a1e3-c6803a77e0f2/signaling 200 17ms","method":"POST","requestID":"e9f864e0-442a-11ef-8685-a1e9f27e6f28","responseTime":17,"status":200,"url":"/devices/f2ccff99-b69e-4d24-a1e3-c6803a77e0f2/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e9f8b300-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/d014b223-7feb-4b0f-85f3-b266427c6f43/signaling 200 16ms","method":"POST","requestID":"e9f8b300-442a-11ef-8685-a1e9f27e6f28","responseTime":16,"status":200,"url":"/devices/d014b223-7feb-4b0f-85f3-b266427c6f43/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY1N30.nV1dyy__Vm9X4jy5n1kZlfnmfyQorPAOsWFYPXCoMz0","level":"info","message":"auth send jwt","requestID":"dd2aeae30e55ae317f7525e6d7c78a96"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"dd2aeae30e55ae317f7525e6d7c78a96","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"e9fb9930-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"dd2aeae30e55ae317f7525e6d7c78a96"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":75,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:17Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2ccff99-b69e-4d24-a1e3-c6803a77e0f2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8ec7c8f4-5ce6-4d3f-a797-c7c945fccd65","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213657.6724744} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":75,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.201564,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:17Z"} authorization-1 | {"client_addr":"127.0.0.1:60544","level":"info","msg":"Received request.","req_id":76,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f2ccff99-b69e-4d24-a1e3-c6803a77e0f2","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"e9fb9930-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f2ccff99-b69e-4d24-a1e3-c6803a77e0f2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e9fb9930-442a-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60544","level":"info","msg":"Sent response.","req_id":76,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.832289,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d014b223-7feb-4b0f-85f3-b266427c6f43","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"dd2aeae30e55ae317f7525e6d7c78a96","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/d014b223-7feb-4b0f-85f3-b266427c6f43","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213657,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY1N30.nV1dyy__Vm9X4jy5n1kZlfnmfyQorPAOsWFYPXCoMz0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"dd2aeae30e55ae317f7525e6d7c78a96","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"e9fb9930-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/f2ccff99-b69e-4d24-a1e3-c6803a77e0f2/signaling 200 12ms","method":"POST","requestID":"e9fb9930-442a-11ef-8685-a1e9f27e6f28","responseTime":12,"status":200,"url":"/devices/f2ccff99-b69e-4d24-a1e3-c6803a77e0f2/signaling"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd014b223-7feb-4b0f-85f3-b266427c6f43","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd014b223-7feb-4b0f-85f3-b266427c6f43","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:15.290876792Z"}]},"request_id":"7933ad32-3e58-49b1-937c-263a4a89a76c","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213657.6796143} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/793ec7d6-d1da-4ec2-b0ce-5672f246ba50"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"6866142c9f79ce41850e3278b19bb3d7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/793ec7d6-d1da-4ec2-b0ce-5672f246ba50"},"level":"info","message":"Building connection plan","requestID":"6866142c9f79ce41850e3278b19bb3d7"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"2a019381-8080-4550-b371-97bd4c92ec71"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"e8a788be-e8b1-4e36-8068-2593b0a2925a"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"ea667091-fa26-4240-bf7d-67c0f17cb480"}]},"level":"info","message":"Built pairwise service configurations","requestID":"6866142c9f79ce41850e3278b19bb3d7"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/f2ccff99-b69e-4d24-a1e3-c6803a77e0f2"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/d014b223-7feb-4b0f-85f3-b266427c6f43"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"6866142c9f79ce41850e3278b19bb3d7"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"dd2aeae30e55ae317f7525e6d7c78a96","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"e9fe0a30-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"dd2aeae30e55ae317f7525e6d7c78a96"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":77,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:17Z"} gateway-1 | {"time_local":"17/Jul/2024:10:54:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/d014b223-7feb-4b0f-85f3-b266427c6f43? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"dd2aeae30e55ae317f7525e6d7c78a96"} device-1 | {"level":"info","message":"GET /devices/d014b223-7feb-4b0f-85f3-b266427c6f43? 200 16ms","method":"GET","requestID":"dd2aeae30e55ae317f7525e6d7c78a96","responseTime":16,"status":200,"url":"/devices/d014b223-7feb-4b0f-85f3-b266427c6f43?"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":77,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.78257,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:17Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"e9fe0a30-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213657,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY1N30.nV1dyy__Vm9X4jy5n1kZlfnmfyQorPAOsWFYPXCoMz0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e9fe0a30-442a-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY1N30.nV1dyy__Vm9X4jy5n1kZlfnmfyQorPAOsWFYPXCoMz0","level":"info","message":"auth send jwt","requestID":"a661b4cb156a8fb9528c964c5e11ea66"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a661b4cb156a8fb9528c964c5e11ea66","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a661b4cb156a8fb9528c964c5e11ea66"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":78,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:17Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":78,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.941021,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f2ccff99-b69e-4d24-a1e3-c6803a77e0f2","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"a661b4cb156a8fb9528c964c5e11ea66","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/f2ccff99-b69e-4d24-a1e3-c6803a77e0f2","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213657,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY1N30.nV1dyy__Vm9X4jy5n1kZlfnmfyQorPAOsWFYPXCoMz0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a661b4cb156a8fb9528c964c5e11ea66","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"a093744f-6247-4998-805e-47ceed3e6e27","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213657.7013154} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f8ffba6e-9e84-4a57-9776-617f8aaa1731","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213657.701425} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"e9fe0a30-442a-11ef-8685-a1e9f27e6f28","responseTime":9,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2ccff99-b69e-4d24-a1e3-c6803a77e0f2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2ccff99-b69e-4d24-a1e3-c6803a77e0f2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:15.344253701Z"}]},"request_id":"43c7c4e8-fb7c-4586-8428-1a815c25ba80","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213657.7066362} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"a661b4cb156a8fb9528c964c5e11ea66","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a661b4cb156a8fb9528c964c5e11ea66"} device-1 | {"level":"info","message":"GET /devices/f2ccff99-b69e-4d24-a1e3-c6803a77e0f2? 200 23ms","method":"GET","requestID":"a661b4cb156a8fb9528c964c5e11ea66","responseTime":23,"status":200,"url":"/devices/f2ccff99-b69e-4d24-a1e3-c6803a77e0f2?"} gateway-1 | {"time_local":"17/Jul/2024:10:54:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f2ccff99-b69e-4d24-a1e3-c6803a77e0f2? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.028","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a661b4cb156a8fb9528c964c5e11ea66"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"e9fe0a30-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"e9fe0a30-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/be7444f6-00b8-4717-a090-a21cbda8a23a'","requestID":"e9fe0a30-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/be7444f6-00b8-4717-a090-a21cbda8a23a'","requestID":"e9fe0a30-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"e9fe0a30-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 36ms","method":"POST","requestID":"e9fe0a30-442a-11ef-8685-a1e9f27e6f28","responseTime":36,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"e9fe0a30-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/be7444f6-00b8-4717-a090-a21cbda8a23a","device":"f2ccff99-b69e-4d24-a1e3-c6803a77e0f2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":false} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/793ec7d6-d1da-4ec2-b0ce-5672f246ba50"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"6866142c9f79ce41850e3278b19bb3d7"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ea07ce30-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":79,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:17Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd014b223-7feb-4b0f-85f3-b266427c6f43","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"40320858-fafa-4ce9-a646-4969a0e400f2","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213657.7534668} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":79,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.005576,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d014b223-7feb-4b0f-85f3-b266427c6f43","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"ea07ce30-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d014b223-7feb-4b0f-85f3-b266427c6f43","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"ea07ce30-442a-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ea07ce30-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/d014b223-7feb-4b0f-85f3-b266427c6f43/signaling 200 13ms","method":"POST","requestID":"ea07ce30-442a-11ef-8685-a1e9f27e6f28","responseTime":13,"status":200,"url":"/devices/d014b223-7feb-4b0f-85f3-b266427c6f43/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ea0a1820-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":80,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:17Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2ccff99-b69e-4d24-a1e3-c6803a77e0f2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"151ce17f-cfea-4ccd-86a7-681263bdfb06","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213657.7675843} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":80,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.972824,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f2ccff99-b69e-4d24-a1e3-c6803a77e0f2","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"ea0a1820-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f2ccff99-b69e-4d24-a1e3-c6803a77e0f2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ea0a1820-442a-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ea0a1820-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/f2ccff99-b69e-4d24-a1e3-c6803a77e0f2/signaling 200 11ms","method":"POST","requestID":"ea0a1820-442a-11ef-8685-a1e9f27e6f28","responseTime":11,"status":200,"url":"/devices/f2ccff99-b69e-4d24-a1e3-c6803a77e0f2/signaling"} device-1 | {"device":"f2ccff99-b69e-4d24-a1e3-c6803a77e0f2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"f2ccff99-b69e-4d24-a1e3-c6803a77e0f2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"d014b223-7feb-4b0f-85f3-b266427c6f43","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"be7444f6-00b8-4717-a090-a21cbda8a23a","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 4207049746334541464 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=msid-semantic: WMS\r\nm=application 9 DTLS/SCTP 5000\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:R1sG\r\na=ice-pwd:rGixd3vw0CdAzCpA4Y9FFhX6\r\na=ice-options:trickle\r\na=fingerprint:sha-256 A7:31:24:27:0A:B9:96:72:55:2C:EA:9D:6D:05:61:E0:51:53:36:09:82:11:B7:4A:D1:A7:B9:50:5D:90:1A:30\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"f2ccff99-b69e-4d24-a1e3-c6803a77e0f2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"device":"f2ccff99-b69e-4d24-a1e3-c6803a77e0f2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"content":{"candidate":"candidate:3915858660 1 udp 2113937151 ba72fb91-add0-46ab-8169-8db333bd5ada.local 34445 typ host generation 0 ufrag R1sG network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"f2ccff99-b69e-4d24-a1e3-c6803a77e0f2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/be7444f6-00b8-4717-a090-a21cbda8a23a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"be7444f6-00b8-4717-a090-a21cbda8a23a","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"candidate":"candidate:2051859447 1 udp 1677729535 141.24.211.56 34445 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag R1sG network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"f2ccff99-b69e-4d24-a1e3-c6803a77e0f2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"f2ccff99-b69e-4d24-a1e3-c6803a77e0f2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1c469e81ea812f8ef5dbee5bb088757a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} device-1 | {"device":"d014b223-7feb-4b0f-85f3-b266427c6f43","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"d014b223-7feb-4b0f-85f3-b266427c6f43","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"d014b223-7feb-4b0f-85f3-b266427c6f43","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"1c469e81ea812f8ef5dbee5bb088757a","responseTime":2,"status":200,"url":"/auth"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/f2ccff99-b69e-4d24-a1e3-c6803a77e0f2'"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/f2ccff99-b69e-4d24-a1e3-c6803a77e0f2"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/d014b223-7feb-4b0f-85f3-b266427c6f43"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/be7444f6-00b8-4717-a090-a21cbda8a23a"}}},"level":"info","message":"received a callback","requestID":"1c469e81ea812f8ef5dbee5bb088757a"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 11ms","method":"POST","requestID":"1c469e81ea812f8ef5dbee5bb088757a","responseTime":11,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:54:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch","requestID":"1c469e81ea812f8ef5dbee5bb088757a"} device-1 | {"data":{"peerconnection":"be7444f6-00b8-4717-a090-a21cbda8a23a","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"d014b223-7feb-4b0f-85f3-b266427c6f43","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"f2ccff99-b69e-4d24-a1e3-c6803a77e0f2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"d014b223-7feb-4b0f-85f3-b266427c6f43","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"be7444f6-00b8-4717-a090-a21cbda8a23a","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"f2ccff99-b69e-4d24-a1e3-c6803a77e0f2","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/be7444f6-00b8-4717-a090-a21cbda8a23a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"be7444f6-00b8-4717-a090-a21cbda8a23a","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9803f010d9c31cd1b8045f8a28b3600e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"9803f010d9c31cd1b8045f8a28b3600e","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/f2ccff99-b69e-4d24-a1e3-c6803a77e0f2"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/d014b223-7feb-4b0f-85f3-b266427c6f43"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/be7444f6-00b8-4717-a090-a21cbda8a23a"}}},"level":"info","message":"received a callback","requestID":"9803f010d9c31cd1b8045f8a28b3600e"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"eb536100-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":81,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:19Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fbe7444f6-00b8-4717-a090-a21cbda8a23a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c0cc5c87-e075-46e1-8a95-c177505a2b59","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213659.9304967} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":81,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":4.338784,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:19Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/be7444f6-00b8-4717-a090-a21cbda8a23a","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"eb536100-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/be7444f6-00b8-4717-a090-a21cbda8a23a","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"eb536100-442a-11ef-8685-a1e9f27e6f28","responseTime":12,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"eb536100-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /peerconnections/be7444f6-00b8-4717-a090-a21cbda8a23a 200 18ms","method":"GET","requestID":"eb536100-442a-11ef-8685-a1e9f27e6f28","responseTime":18,"status":200,"url":"/peerconnections/be7444f6-00b8-4717-a090-a21cbda8a23a"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 70ms","method":"POST","requestID":"9803f010d9c31cd1b8045f8a28b3600e","responseTime":70,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:54:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.077","http_referrer":"","http_user_agent":"node-fetch","requestID":"9803f010d9c31cd1b8045f8a28b3600e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"eb5c61b0-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":82,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:19Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2ccff99-b69e-4d24-a1e3-c6803a77e0f2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"85ac9d17-d649-4ea7-8061-520b96cfd5c3","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213659.988728} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":82,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.505178,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:19Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f2ccff99-b69e-4d24-a1e3-c6803a77e0f2","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"eb5c61b0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f2ccff99-b69e-4d24-a1e3-c6803a77e0f2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"eb5c61b0-442a-11ef-8685-a1e9f27e6f28","responseTime":11,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"eb5c61b0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/f2ccff99-b69e-4d24-a1e3-c6803a77e0f2/signaling 200 19ms","method":"POST","requestID":"eb5c61b0-442a-11ef-8685-a1e9f27e6f28","responseTime":19,"status":200,"url":"/devices/f2ccff99-b69e-4d24-a1e3-c6803a77e0f2/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY1OX0.cn7EHlGj6PC5Ibvpt4Xgbh_ssiLad-Emo2VK3UehPvg","level":"info","message":"auth send jwt","requestID":"61a3b0ed3cd7b8626442bf17e448dedf"} authentication-1 | {"level":"info","message":"GET /auth 200 11ms","method":"GET","requestID":"61a3b0ed3cd7b8626442bf17e448dedf","responseTime":11,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/793ec7d6-d1da-4ec2-b0ce-5672f246ba50","requestID":"61a3b0ed3cd7b8626442bf17e448dedf"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"eb600b30-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":83,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:20Z"} authorization-1 | {"client_addr":"127.0.0.1:60544","level":"info","msg":"Received request.","req_id":84,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:20Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd014b223-7feb-4b0f-85f3-b266427c6f43","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fafdfcd9-3ba3-43c6-98d0-e5600498e03f","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213660.0122933} authorization-1 | {"client_addr":"127.0.0.1:60544","level":"info","msg":"Sent response.","req_id":84,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.489252,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/793ec7d6-d1da-4ec2-b0ce-5672f246ba50","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"61a3b0ed3cd7b8626442bf17e448dedf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:http://localhost/experiments/793ec7d6-d1da-4ec2-b0ce-5672f246ba50","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213659,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY1OX0.cn7EHlGj6PC5Ibvpt4Xgbh_ssiLad-Emo2VK3UehPvg"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"61a3b0ed3cd7b8626442bf17e448dedf","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":83,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.654457,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d014b223-7feb-4b0f-85f3-b266427c6f43","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"eb600b30-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d014b223-7feb-4b0f-85f3-b266427c6f43","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"eb600b30-442a-11ef-8685-a1e9f27e6f28","responseTime":12,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"eb600b30-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/d014b223-7feb-4b0f-85f3-b266427c6f43/signaling 200 21ms","method":"POST","requestID":"eb600b30-442a-11ef-8685-a1e9f27e6f28","responseTime":21,"status":200,"url":"/devices/d014b223-7feb-4b0f-85f3-b266427c6f43/signaling"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/793ec7d6-d1da-4ec2-b0ce-5672f246ba50","requestID":"61a3b0ed3cd7b8626442bf17e448dedf"} gateway-1 | {"time_local":"17/Jul/2024:10:54:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/793ec7d6-d1da-4ec2-b0ce-5672f246ba50 HTTP/1.1","status": "200","body_bytes_sent":"884","request_time":"0.041","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"61a3b0ed3cd7b8626442bf17e448dedf"} experiment-1 | {"level":"info","message":"GET /experiments/793ec7d6-d1da-4ec2-b0ce-5672f246ba50 200 28ms","method":"GET","requestID":"61a3b0ed3cd7b8626442bf17e448dedf","responseTime":28,"status":200,"url":"/experiments/793ec7d6-d1da-4ec2-b0ce-5672f246ba50"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2MH0.rHv5XUkaD7IvbCvWfxrmVnSf0Y07Pcxn2PpRcB_vgIU","level":"info","message":"auth send jwt","requestID":"3f1a5758f4ba878e7b03648a53602890"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"3f1a5758f4ba878e7b03648a53602890","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/793ec7d6-d1da-4ec2-b0ce-5672f246ba50","requestID":"3f1a5758f4ba878e7b03648a53602890"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":85,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:20Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":85,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.234653,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:20Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/793ec7d6-d1da-4ec2-b0ce-5672f246ba50","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"3f1a5758f4ba878e7b03648a53602890","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:http://localhost/experiments/793ec7d6-d1da-4ec2-b0ce-5672f246ba50","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213660,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2MH0.rHv5XUkaD7IvbCvWfxrmVnSf0Y07Pcxn2PpRcB_vgIU"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"3f1a5758f4ba878e7b03648a53602890","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/793ec7d6-d1da-4ec2-b0ce-5672f246ba50"},"level":"info","message":"Attempting to finish experiment","requestID":"3f1a5758f4ba878e7b03648a53602890"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"eb68e4d0-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":86,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:20Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":86,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.235665,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:20Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/be7444f6-00b8-4717-a090-a21cbda8a23a","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"eb68e4d0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"peerconnection:http://localhost/peerconnections/be7444f6-00b8-4717-a090-a21cbda8a23a","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213660,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2MH0.rHv5XUkaD7IvbCvWfxrmVnSf0Y07Pcxn2PpRcB_vgIU"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"eb68e4d0-442a-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/be7444f6-00b8-4717-a090-a21cbda8a23a","device":"f2ccff99-b69e-4d24-a1e3-c6803a77e0f2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"d014b223-7feb-4b0f-85f3-b266427c6f43","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"d014b223-7feb-4b0f-85f3-b266427c6f43","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"d014b223-7feb-4b0f-85f3-b266427c6f43","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/be7444f6-00b8-4717-a090-a21cbda8a23a' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/be7444f6-00b8-4717-a090-a21cbda8a23a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"be7444f6-00b8-4717-a090-a21cbda8a23a","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"51234fb387156db3ac5e7d7e5b138d8b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"51234fb387156db3ac5e7d7e5b138d8b","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d4396a2b761c7afb9bb69ffa205950a5","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"d4396a2b761c7afb9bb69ffa205950a5","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fbe7444f6-00b8-4717-a090-a21cbda8a23a': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fbe7444f6-00b8-4717-a090-a21cbda8a23a","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]},"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":null},"raw_response":{},"request_id":"6f6c0fa6-62da-4752-9af4-171348ae3495","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213660.0966456} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/f2ccff99-b69e-4d24-a1e3-c6803a77e0f2"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/d014b223-7feb-4b0f-85f3-b266427c6f43"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/be7444f6-00b8-4717-a090-a21cbda8a23a"}}},"level":"info","message":"received a callback","requestID":"51234fb387156db3ac5e7d7e5b138d8b"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e5a99b6f-3552-4776-9594-5c2bd49c7e8e","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213660.0971444} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/f2ccff99-b69e-4d24-a1e3-c6803a77e0f2"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/d014b223-7feb-4b0f-85f3-b266427c6f43"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/be7444f6-00b8-4717-a090-a21cbda8a23a"}}},"level":"info","message":"received a callback","requestID":"d4396a2b761c7afb9bb69ffa205950a5"} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"eb68e4d0-442a-11ef-8685-a1e9f27e6f28","responseTime":19,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"be7444f6-00b8-4717-a090-a21cbda8a23a","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"eb68e4d0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"DELETE /peerconnections/be7444f6-00b8-4717-a090-a21cbda8a23a 204 53ms","method":"DELETE","requestID":"eb68e4d0-442a-11ef-8685-a1e9f27e6f28","responseTime":53,"status":204,"url":"/peerconnections/be7444f6-00b8-4717-a090-a21cbda8a23a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/793ec7d6-d1da-4ec2-b0ce-5672f246ba50"},"level":"info","message":"Successfully finished experiment","requestID":"3f1a5758f4ba878e7b03648a53602890"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"eb74f2c0-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":87,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:20Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2ccff99-b69e-4d24-a1e3-c6803a77e0f2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c85a74dc-fea0-4ece-bebd-77a4c3e18bea","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213660.1474662} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":87,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.170693,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f2ccff99-b69e-4d24-a1e3-c6803a77e0f2","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"eb74f2c0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f2ccff99-b69e-4d24-a1e3-c6803a77e0f2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"eb74f2c0-442a-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"eb74f2c0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/f2ccff99-b69e-4d24-a1e3-c6803a77e0f2/signaling 200 14ms","method":"POST","requestID":"eb74f2c0-442a-11ef-8685-a1e9f27e6f28","responseTime":14,"status":200,"url":"/devices/f2ccff99-b69e-4d24-a1e3-c6803a77e0f2/signaling"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F793ec7d6-d1da-4ec2-b0ce-5672f246ba50': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F793ec7d6-d1da-4ec2-b0ce-5672f246ba50","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]},"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":null},"raw_response":{},"request_id":"d2108113-a924-4050-9415-49ac6d9b6976","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213660.1560779} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"01ea0982-f3ba-4687-b27f-048053cf690a","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213660.156578} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"eb77b1e0-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"3f1a5758f4ba878e7b03648a53602890","responseTime":21,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":88,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:20Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd014b223-7feb-4b0f-85f3-b266427c6f43","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"90121e15-baad-4622-9c1c-db04cb38854b","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213660.1631868} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":88,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.765374,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d014b223-7feb-4b0f-85f3-b266427c6f43","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"eb77b1e0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d014b223-7feb-4b0f-85f3-b266427c6f43","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"eb77b1e0-442a-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"eb77b1e0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/d014b223-7feb-4b0f-85f3-b266427c6f43/signaling 200 11ms","method":"POST","requestID":"eb77b1e0-442a-11ef-8685-a1e9f27e6f28","responseTime":11,"status":200,"url":"/devices/d014b223-7feb-4b0f-85f3-b266427c6f43/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/793ec7d6-d1da-4ec2-b0ce-5672f246ba50","requestID":"3f1a5758f4ba878e7b03648a53602890"} gateway-1 | {"time_local":"17/Jul/2024:10:54:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/793ec7d6-d1da-4ec2-b0ce-5672f246ba50 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.190","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3f1a5758f4ba878e7b03648a53602890"} experiment-1 | {"level":"info","message":"DELETE /experiments/793ec7d6-d1da-4ec2-b0ce-5672f246ba50 204 185ms","method":"DELETE","requestID":"3f1a5758f4ba878e7b03648a53602890","responseTime":185,"status":204,"url":"/experiments/793ec7d6-d1da-4ec2-b0ce-5672f246ba50"} gateway-1 | {"time_local":"17/Jul/2024:10:54:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2598","request_time":"4.323","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"7efc181f73d7fa2b218a6cdb517d3603"} gateway-1 | {"time_local":"17/Jul/2024:10:54:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.138","http_referrer":"","http_user_agent":"node-fetch","requestID":"51234fb387156db3ac5e7d7e5b138d8b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 132ms","method":"POST","requestID":"51234fb387156db3ac5e7d7e5b138d8b","responseTime":132,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2MH0.rHv5XUkaD7IvbCvWfxrmVnSf0Y07Pcxn2PpRcB_vgIU","level":"info","message":"auth send jwt","requestID":"ad1cb888d9b99b0b2e0fec87c209d06b"} gateway-1 | {"time_local":"17/Jul/2024:10:54:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.144","http_referrer":"","http_user_agent":"node-fetch","requestID":"d4396a2b761c7afb9bb69ffa205950a5"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 135ms","method":"POST","requestID":"d4396a2b761c7afb9bb69ffa205950a5","responseTime":135,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"ad1cb888d9b99b0b2e0fec87c209d06b","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"ad1cb888d9b99b0b2e0fec87c209d06b"} gateway-1 | {"time_local":"17/Jul/2024:10:54:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2506","request_time":"2.844","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"fe618f2be17facb0bd79c292333a5ea9"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/d014b223-7feb-4b0f-85f3-b266427c6f43' closed"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":89,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:20Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":89,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.932237,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:20Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"ad1cb888d9b99b0b2e0fec87c209d06b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213660,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2MH0.rHv5XUkaD7IvbCvWfxrmVnSf0Y07Pcxn2PpRcB_vgIU"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ad1cb888d9b99b0b2e0fec87c209d06b","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/f2ccff99-b69e-4d24-a1e3-c6803a77e0f2' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F77ac6a7f-dd3b-48b1-b9d9-317b2078687d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"ce5a1f7b-de0c-47d6-b4e3-0981db779763","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213660.2618322} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"ad1cb888d9b99b0b2e0fec87c209d06b","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8d5ae582-0efe-4d5d-8f20-653b29706483","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213660.269379} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"ad1cb888d9b99b0b2e0fec87c209d06b","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F77ac6a7f-dd3b-48b1-b9d9-317b2078687d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"47867c94-5666-4a7f-afd7-570b5f5c73f2","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213660.2810163} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e4aae5dc-0852-46e6-8a7a-0eebde0ce98c","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213660.281261} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"ad1cb888d9b99b0b2e0fec87c209d06b","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F77ac6a7f-dd3b-48b1-b9d9-317b2078687d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F77ac6a7f-dd3b-48b1-b9d9-317b2078687d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:20.281001891Z"}]},"request_id":"bb283ba9-4cef-4f0b-af87-5cfcc920e3cc","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213660.2861588} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ad1cb888d9b99b0b2e0fec87c209d06b","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"ad1cb888d9b99b0b2e0fec87c209d06b"} gateway-1 | {"time_local":"17/Jul/2024:10:54:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.060","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ad1cb888d9b99b0b2e0fec87c209d06b"} device-1 | {"level":"info","message":"POST /devices? 201 52ms","method":"POST","requestID":"ad1cb888d9b99b0b2e0fec87c209d06b","responseTime":52,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2MH0.rHv5XUkaD7IvbCvWfxrmVnSf0Y07Pcxn2PpRcB_vgIU","level":"info","message":"auth send jwt","requestID":"abd4cf0442e15911cb96651eb766479e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"abd4cf0442e15911cb96651eb766479e","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"abd4cf0442e15911cb96651eb766479e"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":90,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:20Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":90,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.76105,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:20Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"abd4cf0442e15911cb96651eb766479e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213660,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2MH0.rHv5XUkaD7IvbCvWfxrmVnSf0Y07Pcxn2PpRcB_vgIU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"abd4cf0442e15911cb96651eb766479e","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F20525f91-cf02-4833-9a4d-fc2c5a133fa2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"7fa0acf2-dfe1-46fa-9567-50eee76c4b23","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213660.3173113} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"abd4cf0442e15911cb96651eb766479e","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f34796f8-9900-44b2-85f1-77e38238211a","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213660.3226137} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"abd4cf0442e15911cb96651eb766479e","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F20525f91-cf02-4833-9a4d-fc2c5a133fa2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"a2ae615b-034c-4401-b17d-d838f47b0804","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213660.3344653} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"dbaff702-89a4-47aa-bd4b-a6cf6edf1249","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213660.3347325} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"abd4cf0442e15911cb96651eb766479e","responseTime":15,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F20525f91-cf02-4833-9a4d-fc2c5a133fa2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F20525f91-cf02-4833-9a4d-fc2c5a133fa2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:20.334454038Z"}]},"request_id":"e1798e5b-0505-46ec-8f10-92a4a5f5a09d","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213660.339258} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"abd4cf0442e15911cb96651eb766479e","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"abd4cf0442e15911cb96651eb766479e"} gateway-1 | {"time_local":"17/Jul/2024:10:54:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"abd4cf0442e15911cb96651eb766479e"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"abd4cf0442e15911cb96651eb766479e","responseTime":47,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2MH0.rHv5XUkaD7IvbCvWfxrmVnSf0Y07Pcxn2PpRcB_vgIU","level":"info","message":"auth send jwt","requestID":"8cc3acc5f9d1949202b1380159524215"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"8cc3acc5f9d1949202b1380159524215","responseTime":4,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2MH0.rHv5XUkaD7IvbCvWfxrmVnSf0Y07Pcxn2PpRcB_vgIU","level":"info","message":"auth send jwt","requestID":"a6b973d2ab757a29eafd53feaa3983cd"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a6b973d2ab757a29eafd53feaa3983cd","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"8cc3acc5f9d1949202b1380159524215"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"a6b973d2ab757a29eafd53feaa3983cd"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":91,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:20Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":91,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.608411,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:20Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/20525f91-cf02-4833-9a4d-fc2c5a133fa2","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"8cc3acc5f9d1949202b1380159524215","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/20525f91-cf02-4833-9a4d-fc2c5a133fa2","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213660,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2MH0.rHv5XUkaD7IvbCvWfxrmVnSf0Y07Pcxn2PpRcB_vgIU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8cc3acc5f9d1949202b1380159524215","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60544","level":"info","msg":"Received request.","req_id":92,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:20Z"} authorization-1 | {"client_addr":"127.0.0.1:60544","level":"info","msg":"Sent response.","req_id":92,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.642882,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:20Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/77ac6a7f-dd3b-48b1-b9d9-317b2078687d","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"a6b973d2ab757a29eafd53feaa3983cd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/77ac6a7f-dd3b-48b1-b9d9-317b2078687d","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213660,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2MH0.rHv5XUkaD7IvbCvWfxrmVnSf0Y07Pcxn2PpRcB_vgIU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a6b973d2ab757a29eafd53feaa3983cd","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F20525f91-cf02-4833-9a4d-fc2c5a133fa2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F20525f91-cf02-4833-9a4d-fc2c5a133fa2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:20.334454038Z"}]},"request_id":"21b285e8-5fd5-4cc3-ba64-fc77623b7d22","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213660.8246763} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8cc3acc5f9d1949202b1380159524215","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F77ac6a7f-dd3b-48b1-b9d9-317b2078687d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F77ac6a7f-dd3b-48b1-b9d9-317b2078687d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:20.281001891Z"}]},"request_id":"db70d377-79d7-47cd-9466-3ca5e64cd65d","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213660.825706} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a6b973d2ab757a29eafd53feaa3983cd","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"18b809bc-21a8-45e1-8179-7418560daed2","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213660.8311749} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"8cc3acc5f9d1949202b1380159524215","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"902d380c-dd9e-481e-a16e-af492a556e54","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213660.8329687} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"a6b973d2ab757a29eafd53feaa3983cd","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F77ac6a7f-dd3b-48b1-b9d9-317b2078687d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F77ac6a7f-dd3b-48b1-b9d9-317b2078687d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:20.281001891Z"}]},"request_id":"94cefc7b-a607-41ed-a3cb-2d36408aece5","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213660.8367028} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"a6b973d2ab757a29eafd53feaa3983cd","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"a6b973d2ab757a29eafd53feaa3983cd"} device-1 | {"level":"info","message":"PATCH /devices/77ac6a7f-dd3b-48b1-b9d9-317b2078687d 200 28ms","method":"PATCH","requestID":"a6b973d2ab757a29eafd53feaa3983cd","responseTime":28,"status":200,"url":"/devices/77ac6a7f-dd3b-48b1-b9d9-317b2078687d"} gateway-1 | {"time_local":"17/Jul/2024:10:54:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/77ac6a7f-dd3b-48b1-b9d9-317b2078687d HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.036","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"a6b973d2ab757a29eafd53feaa3983cd"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2MH0.rHv5XUkaD7IvbCvWfxrmVnSf0Y07Pcxn2PpRcB_vgIU","level":"info","message":"auth send jwt","requestID":"9148bd975db82eaaba2715a680b8797c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"9148bd975db82eaaba2715a680b8797c","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"9148bd975db82eaaba2715a680b8797c"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F20525f91-cf02-4833-9a4d-fc2c5a133fa2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F20525f91-cf02-4833-9a4d-fc2c5a133fa2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:20.334454038Z"}]},"request_id":"83ff597d-8c83-4886-928a-52c81714ffeb","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213660.8462274} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8cc3acc5f9d1949202b1380159524215","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":93,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:20Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":93,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.685428,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:20Z"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"8cc3acc5f9d1949202b1380159524215"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/77ac6a7f-dd3b-48b1-b9d9-317b2078687d","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"9148bd975db82eaaba2715a680b8797c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/77ac6a7f-dd3b-48b1-b9d9-317b2078687d","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213660,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2MH0.rHv5XUkaD7IvbCvWfxrmVnSf0Y07Pcxn2PpRcB_vgIU"} gateway-1 | {"time_local":"17/Jul/2024:10:54:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/20525f91-cf02-4833-9a4d-fc2c5a133fa2 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.047","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"8cc3acc5f9d1949202b1380159524215"} device-1 | {"level":"info","message":"PATCH /devices/20525f91-cf02-4833-9a4d-fc2c5a133fa2 200 41ms","method":"PATCH","requestID":"8cc3acc5f9d1949202b1380159524215","responseTime":41,"status":200,"url":"/devices/20525f91-cf02-4833-9a4d-fc2c5a133fa2"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9148bd975db82eaaba2715a680b8797c","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2MH0.rHv5XUkaD7IvbCvWfxrmVnSf0Y07Pcxn2PpRcB_vgIU","level":"info","message":"auth send jwt","requestID":"736c9077ca4fdbb3be1f624d41f14e96"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"736c9077ca4fdbb3be1f624d41f14e96","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"736c9077ca4fdbb3be1f624d41f14e96"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":94,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:20Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":94,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.830645,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:20Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/20525f91-cf02-4833-9a4d-fc2c5a133fa2","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"736c9077ca4fdbb3be1f624d41f14e96","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/20525f91-cf02-4833-9a4d-fc2c5a133fa2","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213660,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2MH0.rHv5XUkaD7IvbCvWfxrmVnSf0Y07Pcxn2PpRcB_vgIU"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"736c9077ca4fdbb3be1f624d41f14e96","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"9148bd975db82eaaba2715a680b8797c"} gateway-1 | {"time_local":"17/Jul/2024:10:54:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/77ac6a7f-dd3b-48b1-b9d9-317b2078687d/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.060","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"9148bd975db82eaaba2715a680b8797c"} device-1 | {"level":"info","message":"POST /devices/77ac6a7f-dd3b-48b1-b9d9-317b2078687d/websocket 200 56ms","method":"POST","requestID":"9148bd975db82eaaba2715a680b8797c","responseTime":56,"status":200,"url":"/devices/77ac6a7f-dd3b-48b1-b9d9-317b2078687d/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"736c9077ca4fdbb3be1f624d41f14e96"} gateway-1 | {"time_local":"17/Jul/2024:10:54:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/20525f91-cf02-4833-9a4d-fc2c5a133fa2/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.062","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"736c9077ca4fdbb3be1f624d41f14e96"} device-1 | {"level":"info","message":"POST /devices/20525f91-cf02-4833-9a4d-fc2c5a133fa2/websocket 200 40ms","method":"POST","requestID":"736c9077ca4fdbb3be1f624d41f14e96","responseTime":40,"status":200,"url":"/devices/20525f91-cf02-4833-9a4d-fc2c5a133fa2/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/77ac6a7f-dd3b-48b1-b9d9-317b2078687d' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/20525f91-cf02-4833-9a4d-fc2c5a133fa2' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2MH0.rHv5XUkaD7IvbCvWfxrmVnSf0Y07Pcxn2PpRcB_vgIU","level":"info","message":"auth send jwt","requestID":"42b73608cdeee862ac6112c39024d4ed"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"42b73608cdeee862ac6112c39024d4ed","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"42b73608cdeee862ac6112c39024d4ed"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":95,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:20Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":95,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.640751,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/77ac6a7f-dd3b-48b1-b9d9-317b2078687d","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"42b73608cdeee862ac6112c39024d4ed","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/77ac6a7f-dd3b-48b1-b9d9-317b2078687d","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213660,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2MH0.rHv5XUkaD7IvbCvWfxrmVnSf0Y07Pcxn2PpRcB_vgIU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"42b73608cdeee862ac6112c39024d4ed","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F77ac6a7f-dd3b-48b1-b9d9-317b2078687d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F77ac6a7f-dd3b-48b1-b9d9-317b2078687d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:20.281001891Z"}]},"request_id":"cabfbbb6-8838-4313-8907-498e5087e075","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213660.9485784} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"42b73608cdeee862ac6112c39024d4ed","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"42b73608cdeee862ac6112c39024d4ed"} gateway-1 | {"time_local":"17/Jul/2024:10:54:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/77ac6a7f-dd3b-48b1-b9d9-317b2078687d? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"42b73608cdeee862ac6112c39024d4ed"} device-1 | {"level":"info","message":"GET /devices/77ac6a7f-dd3b-48b1-b9d9-317b2078687d? 200 12ms","method":"GET","requestID":"42b73608cdeee862ac6112c39024d4ed","responseTime":12,"status":200,"url":"/devices/77ac6a7f-dd3b-48b1-b9d9-317b2078687d?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2MH0.rHv5XUkaD7IvbCvWfxrmVnSf0Y07Pcxn2PpRcB_vgIU","level":"info","message":"auth send jwt","requestID":"15a68fb44448d4d6c75288ba7dac9d0e"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"15a68fb44448d4d6c75288ba7dac9d0e","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"15a68fb44448d4d6c75288ba7dac9d0e"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":96,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:20Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":96,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.681657,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/20525f91-cf02-4833-9a4d-fc2c5a133fa2","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"15a68fb44448d4d6c75288ba7dac9d0e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/20525f91-cf02-4833-9a4d-fc2c5a133fa2","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213660,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2MH0.rHv5XUkaD7IvbCvWfxrmVnSf0Y07Pcxn2PpRcB_vgIU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"15a68fb44448d4d6c75288ba7dac9d0e","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F20525f91-cf02-4833-9a4d-fc2c5a133fa2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F20525f91-cf02-4833-9a4d-fc2c5a133fa2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:20.334454038Z"}]},"request_id":"fa7307d9-c62c-449a-b2e9-beef677f2950","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213660.9639187} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"15a68fb44448d4d6c75288ba7dac9d0e","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"15a68fb44448d4d6c75288ba7dac9d0e"} gateway-1 | {"time_local":"17/Jul/2024:10:54:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/20525f91-cf02-4833-9a4d-fc2c5a133fa2? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"15a68fb44448d4d6c75288ba7dac9d0e"} device-1 | {"level":"info","message":"GET /devices/20525f91-cf02-4833-9a4d-fc2c5a133fa2? 200 10ms","method":"GET","requestID":"15a68fb44448d4d6c75288ba7dac9d0e","responseTime":10,"status":200,"url":"/devices/20525f91-cf02-4833-9a4d-fc2c5a133fa2?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2MH0.rHv5XUkaD7IvbCvWfxrmVnSf0Y07Pcxn2PpRcB_vgIU","level":"info","message":"auth send jwt","requestID":"7e568d09ce75c1ee92e3689af9276e6d"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"7e568d09ce75c1ee92e3689af9276e6d","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"7e568d09ce75c1ee92e3689af9276e6d"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":97,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:20Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":97,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.687371,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:20Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"7e568d09ce75c1ee92e3689af9276e6d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213660,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2MH0.rHv5XUkaD7IvbCvWfxrmVnSf0Y07Pcxn2PpRcB_vgIU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7e568d09ce75c1ee92e3689af9276e6d","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d87f165d-0daa-47b1-8428-f0a5caf90103"},"level":"info","message":"Attempting to run experiment","requestID":"7e568d09ce75c1ee92e3689af9276e6d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d87f165d-0daa-47b1-8428-f0a5caf90103"},"level":"info","message":"Attempting to book experiment","requestID":"7e568d09ce75c1ee92e3689af9276e6d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d87f165d-0daa-47b1-8428-f0a5caf90103"},"level":"info","message":"Successfully booked experiment","requestID":"7e568d09ce75c1ee92e3689af9276e6d"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ebf93df0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ebf98c10-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":98,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:21Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":98,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.629344,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:21Z"} authorization-1 | {"client_addr":"127.0.0.1:60544","level":"info","msg":"Received request.","req_id":99,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/77ac6a7f-dd3b-48b1-b9d9-317b2078687d","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"ebf93df0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/77ac6a7f-dd3b-48b1-b9d9-317b2078687d","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213660,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2MH0.rHv5XUkaD7IvbCvWfxrmVnSf0Y07Pcxn2PpRcB_vgIU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ebf93df0-442a-11ef-8685-a1e9f27e6f28","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60544","level":"info","msg":"Sent response.","req_id":99,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.525075,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/20525f91-cf02-4833-9a4d-fc2c5a133fa2","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"ebf98c10-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/20525f91-cf02-4833-9a4d-fc2c5a133fa2","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213660,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2MH0.rHv5XUkaD7IvbCvWfxrmVnSf0Y07Pcxn2PpRcB_vgIU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ebf98c10-442a-11ef-8685-a1e9f27e6f28","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F77ac6a7f-dd3b-48b1-b9d9-317b2078687d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F77ac6a7f-dd3b-48b1-b9d9-317b2078687d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:20.281001891Z"}]},"request_id":"79b0768e-8be6-4e89-a066-e510a7510e93","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213661.01568} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ebf93df0-442a-11ef-8685-a1e9f27e6f28","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F20525f91-cf02-4833-9a4d-fc2c5a133fa2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F20525f91-cf02-4833-9a4d-fc2c5a133fa2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:20.334454038Z"}]},"request_id":"d3747bc7-86c7-4a94-b139-c43e746cadee","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213661.0166087} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ebf98c10-442a-11ef-8685-a1e9f27e6f28","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ebf93df0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/77ac6a7f-dd3b-48b1-b9d9-317b2078687d? 200 15ms","method":"GET","requestID":"ebf93df0-442a-11ef-8685-a1e9f27e6f28","responseTime":15,"status":200,"url":"/devices/77ac6a7f-dd3b-48b1-b9d9-317b2078687d?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ebf98c10-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/20525f91-cf02-4833-9a4d-fc2c5a133fa2? 200 14ms","method":"GET","requestID":"ebf98c10-442a-11ef-8685-a1e9f27e6f28","responseTime":14,"status":200,"url":"/devices/20525f91-cf02-4833-9a4d-fc2c5a133fa2?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d87f165d-0daa-47b1-8428-f0a5caf90103"},"level":"info","message":"Setting up experiment","requestID":"7e568d09ce75c1ee92e3689af9276e6d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d87f165d-0daa-47b1-8428-f0a5caf90103"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"7e568d09ce75c1ee92e3689af9276e6d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d87f165d-0daa-47b1-8428-f0a5caf90103"},"level":"info","message":"Successfully locked booking for experiment","requestID":"7e568d09ce75c1ee92e3689af9276e6d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d87f165d-0daa-47b1-8428-f0a5caf90103"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"7e568d09ce75c1ee92e3689af9276e6d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d87f165d-0daa-47b1-8428-f0a5caf90103"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"7e568d09ce75c1ee92e3689af9276e6d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d87f165d-0daa-47b1-8428-f0a5caf90103"},"level":"info","message":"Attempting to update booking for experiment","requestID":"7e568d09ce75c1ee92e3689af9276e6d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d87f165d-0daa-47b1-8428-f0a5caf90103"},"level":"info","message":"Successfully updated booking for experiment","requestID":"7e568d09ce75c1ee92e3689af9276e6d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d87f165d-0daa-47b1-8428-f0a5caf90103"},"level":"info","message":"Successfully set up experiment","requestID":"7e568d09ce75c1ee92e3689af9276e6d"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ec048890-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ec04d6b0-442a-11ef-8685-a1e9f27e6f28"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d87f165d-0daa-47b1-8428-f0a5caf90103"},"level":"info","message":"Successfully running experiment","requestID":"7e568d09ce75c1ee92e3689af9276e6d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ec0524d0-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":100,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:21Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":100,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.703399,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:21Z"} authorization-1 | {"client_addr":"127.0.0.1:60544","level":"info","msg":"Received request.","req_id":101,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/77ac6a7f-dd3b-48b1-b9d9-317b2078687d","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"ec048890-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/77ac6a7f-dd3b-48b1-b9d9-317b2078687d","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213660,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2MH0.rHv5XUkaD7IvbCvWfxrmVnSf0Y07Pcxn2PpRcB_vgIU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ec048890-442a-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60544","level":"info","msg":"Sent response.","req_id":101,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.68643,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/20525f91-cf02-4833-9a4d-fc2c5a133fa2","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"ec04d6b0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/20525f91-cf02-4833-9a4d-fc2c5a133fa2","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213660,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2MH0.rHv5XUkaD7IvbCvWfxrmVnSf0Y07Pcxn2PpRcB_vgIU"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"ec04d6b0-442a-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":102,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:21Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":102,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.129858,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:21Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F77ac6a7f-dd3b-48b1-b9d9-317b2078687d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"aef7e8ee-a70a-4197-820b-9a945ae72e92","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213661.0919619} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/77ac6a7f-dd3b-48b1-b9d9-317b2078687d","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"ec0524d0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/77ac6a7f-dd3b-48b1-b9d9-317b2078687d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"ec0524d0-442a-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F77ac6a7f-dd3b-48b1-b9d9-317b2078687d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F77ac6a7f-dd3b-48b1-b9d9-317b2078687d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:20.281001891Z"}]},"request_id":"d9e6de87-9cab-43a3-bacd-7572b2bfd62c","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213661.095923} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ec0524d0-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"ec048890-442a-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices/77ac6a7f-dd3b-48b1-b9d9-317b2078687d/signaling 200 15ms","method":"POST","requestID":"ec0524d0-442a-11ef-8685-a1e9f27e6f28","responseTime":15,"status":200,"url":"/devices/77ac6a7f-dd3b-48b1-b9d9-317b2078687d/signaling"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F20525f91-cf02-4833-9a4d-fc2c5a133fa2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F20525f91-cf02-4833-9a4d-fc2c5a133fa2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:20.334454038Z"}]},"request_id":"aab33cbb-7054-47fc-88be-ccfa9eeba125","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213661.0994384} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ec04d6b0-442a-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ec07e3f0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ec048890-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":103,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:21Z"} device-1 | {"level":"info","message":"GET /devices/77ac6a7f-dd3b-48b1-b9d9-317b2078687d? 200 25ms","method":"GET","requestID":"ec048890-442a-11ef-8685-a1e9f27e6f28","responseTime":25,"status":200,"url":"/devices/77ac6a7f-dd3b-48b1-b9d9-317b2078687d?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ec04d6b0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/20525f91-cf02-4833-9a4d-fc2c5a133fa2? 200 24ms","method":"GET","requestID":"ec04d6b0-442a-11ef-8685-a1e9f27e6f28","responseTime":24,"status":200,"url":"/devices/20525f91-cf02-4833-9a4d-fc2c5a133fa2?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ec08ce50-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F20525f91-cf02-4833-9a4d-fc2c5a133fa2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5ca95ec6-8454-465d-bc40-46753acd6c7a","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213661.1085143} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":103,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.543943,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/20525f91-cf02-4833-9a4d-fc2c5a133fa2","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"ec07e3f0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/20525f91-cf02-4833-9a4d-fc2c5a133fa2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"ec07e3f0-442a-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd87f165d-0daa-47b1-8428-f0a5caf90103#owner@http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd87f165d-0daa-47b1-8428-f0a5caf90103","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"d74fbba9-4f48-4f25-9764-53cdaaaa327d","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213661.1107244} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4b23d0a0-0172-4184-9db1-00ff17160387","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213661.110905} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ec07e3f0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/20525f91-cf02-4833-9a4d-fc2c5a133fa2/signaling 200 11ms","method":"POST","requestID":"ec07e3f0-442a-11ef-8685-a1e9f27e6f28","responseTime":11,"status":200,"url":"/devices/20525f91-cf02-4833-9a4d-fc2c5a133fa2/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 25ms","method":"POST","requestID":"7e568d09ce75c1ee92e3689af9276e6d","responseTime":25,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":104,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:21Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F77ac6a7f-dd3b-48b1-b9d9-317b2078687d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7b23bfb6-b36c-41b6-9e99-dc5ca9cf46c5","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213661.1164896} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":104,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.963777,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/77ac6a7f-dd3b-48b1-b9d9-317b2078687d","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"ec08ce50-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/77ac6a7f-dd3b-48b1-b9d9-317b2078687d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ec08ce50-442a-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ec08ce50-442a-11ef-8685-a1e9f27e6f28"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/d87f165d-0daa-47b1-8428-f0a5caf90103","user":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"7e568d09ce75c1ee92e3689af9276e6d"} device-1 | {"level":"info","message":"POST /devices/77ac6a7f-dd3b-48b1-b9d9-317b2078687d/signaling 200 13ms","method":"POST","requestID":"ec08ce50-442a-11ef-8685-a1e9f27e6f28","responseTime":13,"status":200,"url":"/devices/77ac6a7f-dd3b-48b1-b9d9-317b2078687d/signaling"} gateway-1 | {"time_local":"17/Jul/2024:10:54:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"815","request_time":"0.154","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7e568d09ce75c1ee92e3689af9276e6d"} experiment-1 | {"level":"info","message":"POST /experiments? 201 150ms","method":"POST","requestID":"7e568d09ce75c1ee92e3689af9276e6d","responseTime":150,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ec0b3f50-442a-11ef-8685-a1e9f27e6f28"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2MX0.edZ7GSl4XQRZZujnWwq_LSyFOyN_dl-GGzHuWNJU3X8","level":"info","message":"auth send jwt","requestID":"7c64fb8adb015a765e545e72b6b7ee13"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"7c64fb8adb015a765e545e72b6b7ee13","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7c64fb8adb015a765e545e72b6b7ee13"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":105,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:21Z"} authorization-1 | {"client_addr":"127.0.0.1:60544","level":"info","msg":"Received request.","req_id":106,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:21Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F20525f91-cf02-4833-9a4d-fc2c5a133fa2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7860c49f-ecca-466b-9dc4-c99553df6622","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213661.130643} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":105,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.31931,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:21Z"} authorization-1 | {"client_addr":"127.0.0.1:60544","level":"info","msg":"Sent response.","req_id":106,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.827306,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/20525f91-cf02-4833-9a4d-fc2c5a133fa2","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"ec0b3f50-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/20525f91-cf02-4833-9a4d-fc2c5a133fa2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ec0b3f50-442a-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/77ac6a7f-dd3b-48b1-b9d9-317b2078687d","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"7c64fb8adb015a765e545e72b6b7ee13","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/77ac6a7f-dd3b-48b1-b9d9-317b2078687d","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213661,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2MX0.edZ7GSl4XQRZZujnWwq_LSyFOyN_dl-GGzHuWNJU3X8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7c64fb8adb015a765e545e72b6b7ee13","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ec0b3f50-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/20525f91-cf02-4833-9a4d-fc2c5a133fa2/signaling 200 11ms","method":"POST","requestID":"ec0b3f50-442a-11ef-8685-a1e9f27e6f28","responseTime":11,"status":200,"url":"/devices/20525f91-cf02-4833-9a4d-fc2c5a133fa2/signaling"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F77ac6a7f-dd3b-48b1-b9d9-317b2078687d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F77ac6a7f-dd3b-48b1-b9d9-317b2078687d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:20.281001891Z"}]},"request_id":"f7899c96-de7c-40a7-ad17-fd914dec229a","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213661.1371694} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d87f165d-0daa-47b1-8428-f0a5caf90103"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"7e568d09ce75c1ee92e3689af9276e6d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d87f165d-0daa-47b1-8428-f0a5caf90103"},"level":"info","message":"Building connection plan","requestID":"7e568d09ce75c1ee92e3689af9276e6d"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"3c71e682-154a-4944-974b-d05a1ad0241e"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"0e1702c5-d42d-4d31-aa1d-7fd30ac42eeb"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"b19ab3c1-6ac0-49e8-9cac-2377a4e68929"}]},"level":"info","message":"Built pairwise service configurations","requestID":"7e568d09ce75c1ee92e3689af9276e6d"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/20525f91-cf02-4833-9a4d-fc2c5a133fa2"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/77ac6a7f-dd3b-48b1-b9d9-317b2078687d"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"7e568d09ce75c1ee92e3689af9276e6d"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7c64fb8adb015a765e545e72b6b7ee13","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"ec0d8940-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7c64fb8adb015a765e545e72b6b7ee13"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":107,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:21Z"} gateway-1 | {"time_local":"17/Jul/2024:10:54:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/77ac6a7f-dd3b-48b1-b9d9-317b2078687d? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7c64fb8adb015a765e545e72b6b7ee13"} device-1 | {"level":"info","message":"GET /devices/77ac6a7f-dd3b-48b1-b9d9-317b2078687d? 200 16ms","method":"GET","requestID":"7c64fb8adb015a765e545e72b6b7ee13","responseTime":16,"status":200,"url":"/devices/77ac6a7f-dd3b-48b1-b9d9-317b2078687d?"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":107,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.916975,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:21Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"ec0d8940-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213660,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2MH0.rHv5XUkaD7IvbCvWfxrmVnSf0Y07Pcxn2PpRcB_vgIU"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ec0d8940-442a-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2MX0.edZ7GSl4XQRZZujnWwq_LSyFOyN_dl-GGzHuWNJU3X8","level":"info","message":"auth send jwt","requestID":"b4cda5a60ace94cb7c0d68e6e1fc8f6e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b4cda5a60ace94cb7c0d68e6e1fc8f6e","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b4cda5a60ace94cb7c0d68e6e1fc8f6e"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":108,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:21Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":108,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.744491,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/20525f91-cf02-4833-9a4d-fc2c5a133fa2","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"b4cda5a60ace94cb7c0d68e6e1fc8f6e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/20525f91-cf02-4833-9a4d-fc2c5a133fa2","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213661,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2MX0.edZ7GSl4XQRZZujnWwq_LSyFOyN_dl-GGzHuWNJU3X8"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b4cda5a60ace94cb7c0d68e6e1fc8f6e","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"7d885404-a3ac-4ea0-bf1b-badaa787ad7a","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213661.1585228} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9c5dd096-71ae-4f7d-9d97-400cc6515dd8","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213661.1586487} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F20525f91-cf02-4833-9a4d-fc2c5a133fa2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F20525f91-cf02-4833-9a4d-fc2c5a133fa2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:20.334454038Z"}]},"request_id":"69201eac-5bc6-49ab-b64d-39465dd0765a","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213661.1596212} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"ec0d8940-442a-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/relations/update"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b4cda5a60ace94cb7c0d68e6e1fc8f6e","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b4cda5a60ace94cb7c0d68e6e1fc8f6e"} gateway-1 | {"time_local":"17/Jul/2024:10:54:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/20525f91-cf02-4833-9a4d-fc2c5a133fa2? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b4cda5a60ace94cb7c0d68e6e1fc8f6e"} device-1 | {"level":"info","message":"GET /devices/20525f91-cf02-4833-9a4d-fc2c5a133fa2? 200 17ms","method":"GET","requestID":"b4cda5a60ace94cb7c0d68e6e1fc8f6e","responseTime":17,"status":200,"url":"/devices/20525f91-cf02-4833-9a4d-fc2c5a133fa2?"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"ec0d8940-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"ec0d8940-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/d2f4c777-1250-48d6-bcf2-6cf8c5e3aaaa'","requestID":"ec0d8940-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/d2f4c777-1250-48d6-bcf2-6cf8c5e3aaaa'","requestID":"ec0d8940-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"ec0d8940-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 36ms","method":"POST","requestID":"ec0d8940-442a-11ef-8685-a1e9f27e6f28","responseTime":36,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"ec0d8940-442a-11ef-8685-a1e9f27e6f28"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d87f165d-0daa-47b1-8428-f0a5caf90103"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"7e568d09ce75c1ee92e3689af9276e6d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ec179b60-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":109,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:21Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F77ac6a7f-dd3b-48b1-b9d9-317b2078687d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c6f3cb89-c87e-4692-b6ce-824807e67c6e","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213661.2121572} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":109,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.724697,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/77ac6a7f-dd3b-48b1-b9d9-317b2078687d","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"ec179b60-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/77ac6a7f-dd3b-48b1-b9d9-317b2078687d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ec179b60-442a-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ec179b60-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/77ac6a7f-dd3b-48b1-b9d9-317b2078687d/signaling 200 11ms","method":"POST","requestID":"ec179b60-442a-11ef-8685-a1e9f27e6f28","responseTime":11,"status":200,"url":"/devices/77ac6a7f-dd3b-48b1-b9d9-317b2078687d/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ec19be40-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":110,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:21Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F20525f91-cf02-4833-9a4d-fc2c5a133fa2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"62b492b0-7d61-4e4c-998c-59d44c5be1ea","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213661.225118} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":110,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.611266,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/20525f91-cf02-4833-9a4d-fc2c5a133fa2","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"ec19be40-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/20525f91-cf02-4833-9a4d-fc2c5a133fa2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ec19be40-442a-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ec19be40-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/20525f91-cf02-4833-9a4d-fc2c5a133fa2/signaling 200 10ms","method":"POST","requestID":"ec19be40-442a-11ef-8685-a1e9f27e6f28","responseTime":10,"status":200,"url":"/devices/20525f91-cf02-4833-9a4d-fc2c5a133fa2/signaling"} device-1 | {"device":"77ac6a7f-dd3b-48b1-b9d9-317b2078687d","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"d2f4c777-1250-48d6-bcf2-6cf8c5e3aaaa","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"20525f91-cf02-4833-9a4d-fc2c5a133fa2","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"d2f4c777-1250-48d6-bcf2-6cf8c5e3aaaa","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"20525f91-cf02-4833-9a4d-fc2c5a133fa2","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"20525f91-cf02-4833-9a4d-fc2c5a133fa2","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"20525f91-cf02-4833-9a4d-fc2c5a133fa2","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"20525f91-cf02-4833-9a4d-fc2c5a133fa2","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/d2f4c777-1250-48d6-bcf2-6cf8c5e3aaaa' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d2f4c777-1250-48d6-bcf2-6cf8c5e3aaaa","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d2f1fc3717168e2827bacc8e85daab15","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"d2f1fc3717168e2827bacc8e85daab15","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/20525f91-cf02-4833-9a4d-fc2c5a133fa2"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/77ac6a7f-dd3b-48b1-b9d9-317b2078687d"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/d2f4c777-1250-48d6-bcf2-6cf8c5e3aaaa"}}},"level":"info","message":"received a callback","requestID":"d2f1fc3717168e2827bacc8e85daab15"} device-1 | {"device":"77ac6a7f-dd3b-48b1-b9d9-317b2078687d","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"77ac6a7f-dd3b-48b1-b9d9-317b2078687d","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 10ms","method":"POST","requestID":"d2f1fc3717168e2827bacc8e85daab15","responseTime":10,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:54:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch","requestID":"d2f1fc3717168e2827bacc8e85daab15"} device-1 | {"device":"77ac6a7f-dd3b-48b1-b9d9-317b2078687d","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"20525f91-cf02-4833-9a4d-fc2c5a133fa2","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"d2f4c777-1250-48d6-bcf2-6cf8c5e3aaaa","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"77ac6a7f-dd3b-48b1-b9d9-317b2078687d","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"77ac6a7f-dd3b-48b1-b9d9-317b2078687d","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"20525f91-cf02-4833-9a4d-fc2c5a133fa2","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"d2f4c777-1250-48d6-bcf2-6cf8c5e3aaaa","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/d2f4c777-1250-48d6-bcf2-6cf8c5e3aaaa' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d2f4c777-1250-48d6-bcf2-6cf8c5e3aaaa","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"84d2de4330bc56ec2096e572dd92850c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"84d2de4330bc56ec2096e572dd92850c","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/20525f91-cf02-4833-9a4d-fc2c5a133fa2"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/77ac6a7f-dd3b-48b1-b9d9-317b2078687d"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/d2f4c777-1250-48d6-bcf2-6cf8c5e3aaaa"}}},"level":"info","message":"received a callback","requestID":"84d2de4330bc56ec2096e572dd92850c"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"ed57bc80-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":111,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:23Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd2f4c777-1250-48d6-bcf2-6cf8c5e3aaaa","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7206025d-5bdb-4fab-b3a0-0106ba788c81","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213663.3115747} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":111,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":4.677091,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/d2f4c777-1250-48d6-bcf2-6cf8c5e3aaaa","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"ed57bc80-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/d2f4c777-1250-48d6-bcf2-6cf8c5e3aaaa","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"ed57bc80-442a-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"ed57bc80-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /peerconnections/d2f4c777-1250-48d6-bcf2-6cf8c5e3aaaa 200 15ms","method":"GET","requestID":"ed57bc80-442a-11ef-8685-a1e9f27e6f28","responseTime":15,"status":200,"url":"/peerconnections/d2f4c777-1250-48d6-bcf2-6cf8c5e3aaaa"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 49ms","method":"POST","requestID":"84d2de4330bc56ec2096e572dd92850c","responseTime":49,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:54:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.054","http_referrer":"","http_user_agent":"node-fetch","requestID":"84d2de4330bc56ec2096e572dd92850c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ed5dfe10-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":112,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:23Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F20525f91-cf02-4833-9a4d-fc2c5a133fa2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0ac04dee-74f9-4e43-8c7f-adccc1b8eaeb","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213663.3548002} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":112,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.442143,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/20525f91-cf02-4833-9a4d-fc2c5a133fa2","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"ed5dfe10-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/20525f91-cf02-4833-9a4d-fc2c5a133fa2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"ed5dfe10-442a-11ef-8685-a1e9f27e6f28","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ed5dfe10-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/20525f91-cf02-4833-9a4d-fc2c5a133fa2/signaling 200 18ms","method":"POST","requestID":"ed5dfe10-442a-11ef-8685-a1e9f27e6f28","responseTime":18,"status":200,"url":"/devices/20525f91-cf02-4833-9a4d-fc2c5a133fa2/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ed613260-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":113,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:23Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F77ac6a7f-dd3b-48b1-b9d9-317b2078687d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"46281b75-7dfa-43fd-9201-9c67b06d0671","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213663.3737292} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":113,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.552595,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/77ac6a7f-dd3b-48b1-b9d9-317b2078687d","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"ed613260-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/77ac6a7f-dd3b-48b1-b9d9-317b2078687d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"ed613260-442a-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2M30.fsVGsHhaWpqgvEHeIszluvhe2XDEzMtLgvP0qeL9ORY","level":"info","message":"auth send jwt","requestID":"3e43715ce924051dd0ea698575ff1f37"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3e43715ce924051dd0ea698575ff1f37","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/d87f165d-0daa-47b1-8428-f0a5caf90103","requestID":"3e43715ce924051dd0ea698575ff1f37"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ed613260-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/77ac6a7f-dd3b-48b1-b9d9-317b2078687d/signaling 200 16ms","method":"POST","requestID":"ed613260-442a-11ef-8685-a1e9f27e6f28","responseTime":16,"status":200,"url":"/devices/77ac6a7f-dd3b-48b1-b9d9-317b2078687d/signaling"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":114,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:23Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":114,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.336541,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/d87f165d-0daa-47b1-8428-f0a5caf90103","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"3e43715ce924051dd0ea698575ff1f37","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:http://localhost/experiments/d87f165d-0daa-47b1-8428-f0a5caf90103","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213663,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2M30.fsVGsHhaWpqgvEHeIszluvhe2XDEzMtLgvP0qeL9ORY"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"3e43715ce924051dd0ea698575ff1f37","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/d87f165d-0daa-47b1-8428-f0a5caf90103","requestID":"3e43715ce924051dd0ea698575ff1f37"} gateway-1 | {"time_local":"17/Jul/2024:10:54:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/d87f165d-0daa-47b1-8428-f0a5caf90103 HTTP/1.1","status": "200","body_bytes_sent":"888","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3e43715ce924051dd0ea698575ff1f37"} experiment-1 | {"level":"info","message":"GET /experiments/d87f165d-0daa-47b1-8428-f0a5caf90103 200 21ms","method":"GET","requestID":"3e43715ce924051dd0ea698575ff1f37","responseTime":21,"status":200,"url":"/experiments/d87f165d-0daa-47b1-8428-f0a5caf90103"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2M30.fsVGsHhaWpqgvEHeIszluvhe2XDEzMtLgvP0qeL9ORY","level":"info","message":"auth send jwt","requestID":"d31b7ebb5166df19486dbbc8fd780811"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d31b7ebb5166df19486dbbc8fd780811","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/d87f165d-0daa-47b1-8428-f0a5caf90103","requestID":"d31b7ebb5166df19486dbbc8fd780811"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":115,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:23Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":115,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.975103,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:23Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/d87f165d-0daa-47b1-8428-f0a5caf90103","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"d31b7ebb5166df19486dbbc8fd780811","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:http://localhost/experiments/d87f165d-0daa-47b1-8428-f0a5caf90103","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213663,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2M30.fsVGsHhaWpqgvEHeIszluvhe2XDEzMtLgvP0qeL9ORY"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d31b7ebb5166df19486dbbc8fd780811","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d87f165d-0daa-47b1-8428-f0a5caf90103"},"level":"info","message":"Attempting to finish experiment","requestID":"d31b7ebb5166df19486dbbc8fd780811"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"ed6a5a20-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":116,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:23Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":116,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.859516,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:23Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/d2f4c777-1250-48d6-bcf2-6cf8c5e3aaaa","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"ed6a5a20-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"peerconnection:http://localhost/peerconnections/d2f4c777-1250-48d6-bcf2-6cf8c5e3aaaa","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213663,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2M30.fsVGsHhaWpqgvEHeIszluvhe2XDEzMtLgvP0qeL9ORY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ed6a5a20-442a-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"device":"20525f91-cf02-4833-9a4d-fc2c5a133fa2","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"20525f91-cf02-4833-9a4d-fc2c5a133fa2","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"20525f91-cf02-4833-9a4d-fc2c5a133fa2","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"77ac6a7f-dd3b-48b1-b9d9-317b2078687d","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"77ac6a7f-dd3b-48b1-b9d9-317b2078687d","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"77ac6a7f-dd3b-48b1-b9d9-317b2078687d","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/d2f4c777-1250-48d6-bcf2-6cf8c5e3aaaa' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/d2f4c777-1250-48d6-bcf2-6cf8c5e3aaaa' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d2f4c777-1250-48d6-bcf2-6cf8c5e3aaaa","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd2f4c777-1250-48d6-bcf2-6cf8c5e3aaaa': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd2f4c777-1250-48d6-bcf2-6cf8c5e3aaaa","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]},"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":null},"raw_response":{},"request_id":"62f839ce-26ea-4e54-b0b5-5f0d8122d0e6","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213663.4531896} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ab9b30ff9862ee6f14d66285f7dca555","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"ab9b30ff9862ee6f14d66285f7dca555","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b02618f4ccb0aac6b727964ac45ae541","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1c9ceeb7-c23a-4b66-8dbc-c46f910d7c5d","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213663.4539812} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/20525f91-cf02-4833-9a4d-fc2c5a133fa2"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/77ac6a7f-dd3b-48b1-b9d9-317b2078687d"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/d2f4c777-1250-48d6-bcf2-6cf8c5e3aaaa"}}},"level":"info","message":"received a callback","requestID":"ab9b30ff9862ee6f14d66285f7dca555"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"b02618f4ccb0aac6b727964ac45ae541","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"ed6a5a20-442a-11ef-8685-a1e9f27e6f28","responseTime":17,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/20525f91-cf02-4833-9a4d-fc2c5a133fa2"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/77ac6a7f-dd3b-48b1-b9d9-317b2078687d"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/d2f4c777-1250-48d6-bcf2-6cf8c5e3aaaa"}}},"level":"info","message":"received a callback","requestID":"b02618f4ccb0aac6b727964ac45ae541"} device-1 | {"data":{"peerconnection":"d2f4c777-1250-48d6-bcf2-6cf8c5e3aaaa","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"ed6a5a20-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"DELETE /peerconnections/d2f4c777-1250-48d6-bcf2-6cf8c5e3aaaa 204 53ms","method":"DELETE","requestID":"ed6a5a20-442a-11ef-8685-a1e9f27e6f28","responseTime":53,"status":204,"url":"/peerconnections/d2f4c777-1250-48d6-bcf2-6cf8c5e3aaaa"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d87f165d-0daa-47b1-8428-f0a5caf90103"},"level":"info","message":"Successfully finished experiment","requestID":"d31b7ebb5166df19486dbbc8fd780811"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ed768f20-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":117,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:23Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F20525f91-cf02-4833-9a4d-fc2c5a133fa2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"216b5b04-e7ee-4baf-9cf6-b143449129f6","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213663.5160968} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":117,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.754072,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/20525f91-cf02-4833-9a4d-fc2c5a133fa2","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"ed768f20-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/20525f91-cf02-4833-9a4d-fc2c5a133fa2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"ed768f20-442a-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ed768f20-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd87f165d-0daa-47b1-8428-f0a5caf90103': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd87f165d-0daa-47b1-8428-f0a5caf90103","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]},"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":null},"raw_response":{},"request_id":"1e4f963f-7beb-4719-a5b1-769d9d61ec31","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213663.5239112} device-1 | {"level":"info","message":"POST /devices/20525f91-cf02-4833-9a4d-fc2c5a133fa2/signaling 200 18ms","method":"POST","requestID":"ed768f20-442a-11ef-8685-a1e9f27e6f28","responseTime":18,"status":200,"url":"/devices/20525f91-cf02-4833-9a4d-fc2c5a133fa2/signaling"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"959b15cd-6625-44f2-b6a4-14a51f5f7ae3","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213663.5242698} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"d31b7ebb5166df19486dbbc8fd780811","responseTime":24,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ed79ea80-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":118,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:23Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F77ac6a7f-dd3b-48b1-b9d9-317b2078687d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"05741161-987a-47bf-a4f5-fa06ddafdb14","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213663.5364199} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":118,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.658934,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/77ac6a7f-dd3b-48b1-b9d9-317b2078687d","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"ed79ea80-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/77ac6a7f-dd3b-48b1-b9d9-317b2078687d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"ed79ea80-442a-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ed79ea80-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/77ac6a7f-dd3b-48b1-b9d9-317b2078687d/signaling 200 16ms","method":"POST","requestID":"ed79ea80-442a-11ef-8685-a1e9f27e6f28","responseTime":16,"status":200,"url":"/devices/77ac6a7f-dd3b-48b1-b9d9-317b2078687d/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/d87f165d-0daa-47b1-8428-f0a5caf90103","requestID":"d31b7ebb5166df19486dbbc8fd780811"} gateway-1 | {"time_local":"17/Jul/2024:10:54:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/d87f165d-0daa-47b1-8428-f0a5caf90103 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.198","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d31b7ebb5166df19486dbbc8fd780811"} experiment-1 | {"level":"info","message":"DELETE /experiments/d87f165d-0daa-47b1-8428-f0a5caf90103 204 195ms","method":"DELETE","requestID":"d31b7ebb5166df19486dbbc8fd780811","responseTime":195,"status":204,"url":"/experiments/d87f165d-0daa-47b1-8428-f0a5caf90103"} gateway-1 | {"time_local":"17/Jul/2024:10:54:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2506","request_time":"2.699","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"ef05c45df5bc4ce5d64b4ffac89d439d"} gateway-1 | {"time_local":"17/Jul/2024:10:54:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2506","request_time":"2.686","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"78a3e21ef6daabfdcfa7fb9c57be8ab6"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 148ms","method":"POST","requestID":"ab9b30ff9862ee6f14d66285f7dca555","responseTime":148,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:54:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.154","http_referrer":"","http_user_agent":"node-fetch","requestID":"ab9b30ff9862ee6f14d66285f7dca555"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 146ms","method":"POST","requestID":"b02618f4ccb0aac6b727964ac45ae541","responseTime":146,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:54:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.153","http_referrer":"","http_user_agent":"node-fetch","requestID":"b02618f4ccb0aac6b727964ac45ae541"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2M30.fsVGsHhaWpqgvEHeIszluvhe2XDEzMtLgvP0qeL9ORY","level":"info","message":"auth send jwt","requestID":"359be404a902c0ff470b872ff0c3823c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"359be404a902c0ff470b872ff0c3823c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/20525f91-cf02-4833-9a4d-fc2c5a133fa2' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"359be404a902c0ff470b872ff0c3823c"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":119,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:23Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":119,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.935244,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:23Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"359be404a902c0ff470b872ff0c3823c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213663,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2M30.fsVGsHhaWpqgvEHeIszluvhe2XDEzMtLgvP0qeL9ORY"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"359be404a902c0ff470b872ff0c3823c","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/77ac6a7f-dd3b-48b1-b9d9-317b2078687d' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F51aa9f08-abde-4f52-9413-6c51edc80bd3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"f53f0f8d-166b-48f3-b12a-b5b5d29078bc","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213663.635683} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"359be404a902c0ff470b872ff0c3823c","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"35afb19d-68c4-4387-9182-5572e1dd1b9f","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213663.6418927} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"359be404a902c0ff470b872ff0c3823c","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F51aa9f08-abde-4f52-9413-6c51edc80bd3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"53ab9a5a-722a-4997-853a-3f219efc4293","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213663.6534455} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6f84b9be-019f-47f3-9f65-6d3d673a00cc","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213663.6537454} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"359be404a902c0ff470b872ff0c3823c","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F51aa9f08-abde-4f52-9413-6c51edc80bd3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F51aa9f08-abde-4f52-9413-6c51edc80bd3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:23.653428046Z"}]},"request_id":"9535a26a-7c82-4b31-a1ad-7f23f81d932a","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213663.6592352} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"359be404a902c0ff470b872ff0c3823c","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"359be404a902c0ff470b872ff0c3823c"} gateway-1 | {"time_local":"17/Jul/2024:10:54:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.058","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"359be404a902c0ff470b872ff0c3823c"} device-1 | {"level":"info","message":"POST /devices? 201 50ms","method":"POST","requestID":"359be404a902c0ff470b872ff0c3823c","responseTime":50,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2M30.fsVGsHhaWpqgvEHeIszluvhe2XDEzMtLgvP0qeL9ORY","level":"info","message":"auth send jwt","requestID":"74a010dd8d234d8659eab0ec2b1f6c3d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"74a010dd8d234d8659eab0ec2b1f6c3d","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"74a010dd8d234d8659eab0ec2b1f6c3d"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":120,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:23Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":120,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.82366,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:23Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"74a010dd8d234d8659eab0ec2b1f6c3d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213663,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2M30.fsVGsHhaWpqgvEHeIszluvhe2XDEzMtLgvP0qeL9ORY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"74a010dd8d234d8659eab0ec2b1f6c3d","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa1724650-6e7f-4f8d-a1a7-4b7401a90084","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"7e8b4813-a4ad-4c0a-b810-b4722661ef3e","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213663.6925328} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"74a010dd8d234d8659eab0ec2b1f6c3d","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5c251983-c2d6-462c-8996-f40dd82a5968","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213663.6992192} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"74a010dd8d234d8659eab0ec2b1f6c3d","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa1724650-6e7f-4f8d-a1a7-4b7401a90084","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"6b2d5210-e6a2-4af0-98de-d2cc227f861d","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213663.7115827} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"dea172bd-5bd3-424c-a6e2-f0e6aa8145b2","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213663.7118587} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"74a010dd8d234d8659eab0ec2b1f6c3d","responseTime":15,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa1724650-6e7f-4f8d-a1a7-4b7401a90084","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa1724650-6e7f-4f8d-a1a7-4b7401a90084","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:23.711568997Z"}]},"request_id":"a74d4e6c-c3b7-4b46-9c57-55d19a3d0212","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213663.7171233} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"74a010dd8d234d8659eab0ec2b1f6c3d","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"74a010dd8d234d8659eab0ec2b1f6c3d"} gateway-1 | {"time_local":"17/Jul/2024:10:54:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.057","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"74a010dd8d234d8659eab0ec2b1f6c3d"} device-1 | {"level":"info","message":"POST /devices? 201 53ms","method":"POST","requestID":"74a010dd8d234d8659eab0ec2b1f6c3d","responseTime":53,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2M30.fsVGsHhaWpqgvEHeIszluvhe2XDEzMtLgvP0qeL9ORY","level":"info","message":"auth send jwt","requestID":"edc4ccd784b86981ff2ef96f2454758d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"edc4ccd784b86981ff2ef96f2454758d","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"edc4ccd784b86981ff2ef96f2454758d"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":121,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:23Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":121,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.807493,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:23Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"edc4ccd784b86981ff2ef96f2454758d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213663,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2M30.fsVGsHhaWpqgvEHeIszluvhe2XDEzMtLgvP0qeL9ORY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"edc4ccd784b86981ff2ef96f2454758d","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7879c383-568c-4c78-a207-daa287ec4ca2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"0d387392-0e3c-41c9-9422-f52d08be1d17","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213663.7478032} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"edc4ccd784b86981ff2ef96f2454758d","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"01ff7acd-ae16-44e0-b234-dbded4c84e36","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213663.7541037} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"edc4ccd784b86981ff2ef96f2454758d","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7879c383-568c-4c78-a207-daa287ec4ca2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"622759e5-4be2-4a83-97e3-edf4cc17c076","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213663.7646463} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"07dab5ea-ebd1-46c8-87be-17e2d0ca3a6d","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213663.764887} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"edc4ccd784b86981ff2ef96f2454758d","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7879c383-568c-4c78-a207-daa287ec4ca2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7879c383-568c-4c78-a207-daa287ec4ca2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:23.764631095Z"}]},"request_id":"069abc78-6134-4cd6-b7f1-80be7d9f0812","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213663.7703843} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"edc4ccd784b86981ff2ef96f2454758d","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"edc4ccd784b86981ff2ef96f2454758d"} gateway-1 | {"time_local":"17/Jul/2024:10:54:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.052","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"edc4ccd784b86981ff2ef96f2454758d"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"edc4ccd784b86981ff2ef96f2454758d","responseTime":47,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2M30.fsVGsHhaWpqgvEHeIszluvhe2XDEzMtLgvP0qeL9ORY","level":"info","message":"auth send jwt","requestID":"961741798b7568d485f3eeedd05752a0"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"961741798b7568d485f3eeedd05752a0","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"961741798b7568d485f3eeedd05752a0"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":122,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:23Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":122,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.021793,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:23Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"961741798b7568d485f3eeedd05752a0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213663,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2M30.fsVGsHhaWpqgvEHeIszluvhe2XDEzMtLgvP0qeL9ORY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"961741798b7568d485f3eeedd05752a0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7f730d6f-1923-4f7e-aa16-37bb36a78d13","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"6ead42b0-59fe-49c2-a022-1801d9472670","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213663.8004138} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"961741798b7568d485f3eeedd05752a0","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a37aea72-e511-44f4-a864-3506f2dcb8a7","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213663.8065062} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"961741798b7568d485f3eeedd05752a0","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7f730d6f-1923-4f7e-aa16-37bb36a78d13","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"936f26b4-c489-4c3d-8425-b1791acc24de","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213663.8249712} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"95e6b2c5-d42c-40a3-b084-5cd11cf6351c","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213663.825091} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"961741798b7568d485f3eeedd05752a0","responseTime":24,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7f730d6f-1923-4f7e-aa16-37bb36a78d13","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7f730d6f-1923-4f7e-aa16-37bb36a78d13","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:23.824946342Z"}]},"request_id":"34d52eb2-f928-4adb-8e56-0c6ff9b1878b","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213663.832834} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"961741798b7568d485f3eeedd05752a0","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"961741798b7568d485f3eeedd05752a0"} gateway-1 | {"time_local":"17/Jul/2024:10:54:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.061","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"961741798b7568d485f3eeedd05752a0"} device-1 | {"level":"info","message":"POST /devices? 201 55ms","method":"POST","requestID":"961741798b7568d485f3eeedd05752a0","responseTime":55,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2M30.fsVGsHhaWpqgvEHeIszluvhe2XDEzMtLgvP0qeL9ORY","level":"info","message":"auth send jwt","requestID":"de8c6fc7c046ff63d3ec9d0aa2e11aa0"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"de8c6fc7c046ff63d3ec9d0aa2e11aa0","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"de8c6fc7c046ff63d3ec9d0aa2e11aa0"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":123,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:23Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":123,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":2.001677,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:23Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"de8c6fc7c046ff63d3ec9d0aa2e11aa0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213663,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2M30.fsVGsHhaWpqgvEHeIszluvhe2XDEzMtLgvP0qeL9ORY"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"de8c6fc7c046ff63d3ec9d0aa2e11aa0","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7497e1bd-22df-42b7-8905-6b9ee62d48ea","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"2302f762-9721-46c8-9798-7a09d55bb237","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213663.8642712} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"de8c6fc7c046ff63d3ec9d0aa2e11aa0","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7884f3bc-8e74-4d02-966e-7bfbbeda2f21","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213663.8723528} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"de8c6fc7c046ff63d3ec9d0aa2e11aa0","responseTime":7,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7497e1bd-22df-42b7-8905-6b9ee62d48ea","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"096b2f3a-fac0-4b89-af8e-16e87a14bcc5","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213663.881308} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5494e83e-8e5f-401d-843f-2af550b4e3ab","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213663.881715} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"de8c6fc7c046ff63d3ec9d0aa2e11aa0","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7497e1bd-22df-42b7-8905-6b9ee62d48ea","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7497e1bd-22df-42b7-8905-6b9ee62d48ea","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:23.881283728Z"}]},"request_id":"514d6e65-db54-4204-9554-8df2f99a5e38","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213663.8883996} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"de8c6fc7c046ff63d3ec9d0aa2e11aa0","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"de8c6fc7c046ff63d3ec9d0aa2e11aa0"} gateway-1 | {"time_local":"17/Jul/2024:10:54:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.054","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"de8c6fc7c046ff63d3ec9d0aa2e11aa0"} device-1 | {"level":"info","message":"POST /devices? 201 50ms","method":"POST","requestID":"de8c6fc7c046ff63d3ec9d0aa2e11aa0","responseTime":50,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2M30.fsVGsHhaWpqgvEHeIszluvhe2XDEzMtLgvP0qeL9ORY","level":"info","message":"auth send jwt","requestID":"ef8dcbc3d3e052f49e290f898ff9c59c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ef8dcbc3d3e052f49e290f898ff9c59c","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"ef8dcbc3d3e052f49e290f898ff9c59c"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":124,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:23Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":124,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.133912,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:23Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"ef8dcbc3d3e052f49e290f898ff9c59c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213663,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2M30.fsVGsHhaWpqgvEHeIszluvhe2XDEzMtLgvP0qeL9ORY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ef8dcbc3d3e052f49e290f898ff9c59c","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9039b5be-74c2-420d-8949-96eb72830031","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"94eedcac-bd0e-43ee-894d-da0747b185cf","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213663.9206474} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ef8dcbc3d3e052f49e290f898ff9c59c","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8ef3bf77-c9af-498d-8c36-f1669f1e4005","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213663.9276783} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"ef8dcbc3d3e052f49e290f898ff9c59c","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9039b5be-74c2-420d-8949-96eb72830031","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"4262e605-5790-4061-885a-bcad7ecada2f","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213663.9469428} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f09f02a0-1710-4204-8572-0a6b948813c4","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213663.9472706} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"ef8dcbc3d3e052f49e290f898ff9c59c","responseTime":23,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9039b5be-74c2-420d-8949-96eb72830031","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9039b5be-74c2-420d-8949-96eb72830031","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:23.946906381Z"}]},"request_id":"cdd87f80-145a-4e94-8003-236aac9ee92c","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213663.9543836} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ef8dcbc3d3e052f49e290f898ff9c59c","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"ef8dcbc3d3e052f49e290f898ff9c59c"} gateway-1 | {"time_local":"17/Jul/2024:10:54:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.064","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ef8dcbc3d3e052f49e290f898ff9c59c"} device-1 | {"level":"info","message":"POST /devices? 201 59ms","method":"POST","requestID":"ef8dcbc3d3e052f49e290f898ff9c59c","responseTime":59,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2M30.fsVGsHhaWpqgvEHeIszluvhe2XDEzMtLgvP0qeL9ORY","level":"info","message":"auth send jwt","requestID":"ebf6f855a960614482a4a309defe3ae3"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ebf6f855a960614482a4a309defe3ae3","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"ebf6f855a960614482a4a309defe3ae3"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":125,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:23Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":125,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.370425,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:23Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"ebf6f855a960614482a4a309defe3ae3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213663,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2M30.fsVGsHhaWpqgvEHeIszluvhe2XDEzMtLgvP0qeL9ORY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ebf6f855a960614482a4a309defe3ae3","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0cce67fe-f3f9-47ff-b2a7-cb71e7d9b6de","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"4f37e949-28d6-4885-b68b-91cb0a90717b","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213663.9906478} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ebf6f855a960614482a4a309defe3ae3","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"82d21f07-f677-401c-89d1-8ea70adcc83d","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213663.9983015} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"ebf6f855a960614482a4a309defe3ae3","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0cce67fe-f3f9-47ff-b2a7-cb71e7d9b6de","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"5814da25-9904-4c9f-9838-06f097cd362d","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213664.0107205} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"02088fa0-8492-4b16-9846-e41080719d09","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213664.0108569} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"ebf6f855a960614482a4a309defe3ae3","responseTime":16,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0cce67fe-f3f9-47ff-b2a7-cb71e7d9b6de","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0cce67fe-f3f9-47ff-b2a7-cb71e7d9b6de","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:24.010705241Z"}]},"request_id":"6cf97a78-de05-43f5-89a2-74d3e7b600a4","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213664.017586} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ebf6f855a960614482a4a309defe3ae3","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"ebf6f855a960614482a4a309defe3ae3"} gateway-1 | {"time_local":"17/Jul/2024:10:54:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.061","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ebf6f855a960614482a4a309defe3ae3"} device-1 | {"level":"info","message":"POST /devices? 201 54ms","method":"POST","requestID":"ebf6f855a960614482a4a309defe3ae3","responseTime":54,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2NH0.0HG9JQ7EonxQcB6kirP4A_ze274kI0rZ8ify9acaTE4","level":"info","message":"auth send jwt","requestID":"9439c2731d21e0376c9b878b2dbe08b4"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9439c2731d21e0376c9b878b2dbe08b4","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"9439c2731d21e0376c9b878b2dbe08b4"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":126,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:24Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":126,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.913056,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:24Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"9439c2731d21e0376c9b878b2dbe08b4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213664,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2NH0.0HG9JQ7EonxQcB6kirP4A_ze274kI0rZ8ify9acaTE4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9439c2731d21e0376c9b878b2dbe08b4","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F62aef430-8718-4888-8065-31137fa0911e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"4cd9beed-467a-443f-8882-5e8e80a6de35","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213664.050983} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9439c2731d21e0376c9b878b2dbe08b4","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8280eafe-20a3-4003-9511-5c02fcc2ac5e","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213664.0575671} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"9439c2731d21e0376c9b878b2dbe08b4","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F62aef430-8718-4888-8065-31137fa0911e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"d30029a2-38cf-4576-a0ae-39f14a78d797","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213664.0748358} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"993bd8a3-d496-49ca-a412-220e86aeec10","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213664.0752726} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"9439c2731d21e0376c9b878b2dbe08b4","responseTime":21,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F62aef430-8718-4888-8065-31137fa0911e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F62aef430-8718-4888-8065-31137fa0911e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:24.074809078Z"}]},"request_id":"49630cc7-bac0-40da-8ed4-55f172139b3b","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213664.0823135} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"9439c2731d21e0376c9b878b2dbe08b4","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"9439c2731d21e0376c9b878b2dbe08b4"} gateway-1 | {"time_local":"17/Jul/2024:10:54:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.063","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9439c2731d21e0376c9b878b2dbe08b4"} device-1 | {"level":"info","message":"POST /devices? 201 57ms","method":"POST","requestID":"9439c2731d21e0376c9b878b2dbe08b4","responseTime":57,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2NH0.0HG9JQ7EonxQcB6kirP4A_ze274kI0rZ8ify9acaTE4","level":"info","message":"auth send jwt","requestID":"d63763eb704dc2f1fcc5e8823a940747"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"d63763eb704dc2f1fcc5e8823a940747","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"d63763eb704dc2f1fcc5e8823a940747"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":127,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:24Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":127,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.854764,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:24Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"d63763eb704dc2f1fcc5e8823a940747","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213664,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2NH0.0HG9JQ7EonxQcB6kirP4A_ze274kI0rZ8ify9acaTE4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d63763eb704dc2f1fcc5e8823a940747","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1d0be960-384e-4015-a6fd-3a23e0955e15","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"7e52ce75-df99-45c6-8fdd-55331aecf50a","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213664.1179826} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d63763eb704dc2f1fcc5e8823a940747","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4a83c16b-1764-4cf5-9f6b-8a1020a90406","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213664.1255286} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"d63763eb704dc2f1fcc5e8823a940747","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1d0be960-384e-4015-a6fd-3a23e0955e15","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"2a7cc550-975c-4549-bde9-15eeb2a79b50","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213664.1373494} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"85668cc1-f715-4f72-95d3-c479f1f61665","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213664.137722} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"d63763eb704dc2f1fcc5e8823a940747","responseTime":16,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1d0be960-384e-4015-a6fd-3a23e0955e15","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1d0be960-384e-4015-a6fd-3a23e0955e15","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:24.137326402Z"}]},"request_id":"8881e5a1-5e81-40f9-b920-1a352df62fd7","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213664.1445286} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d63763eb704dc2f1fcc5e8823a940747","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"d63763eb704dc2f1fcc5e8823a940747"} device-1 | {"level":"info","message":"POST /devices? 201 53ms","method":"POST","requestID":"d63763eb704dc2f1fcc5e8823a940747","responseTime":53,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"17/Jul/2024:10:54:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.059","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d63763eb704dc2f1fcc5e8823a940747"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2NH0.0HG9JQ7EonxQcB6kirP4A_ze274kI0rZ8ify9acaTE4","level":"info","message":"auth send jwt","requestID":"9a9c4d98fd519f05df67036425e0ecc9"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9a9c4d98fd519f05df67036425e0ecc9","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"9a9c4d98fd519f05df67036425e0ecc9"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":128,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:24Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":128,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.233475,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:24Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"9a9c4d98fd519f05df67036425e0ecc9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213664,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2NH0.0HG9JQ7EonxQcB6kirP4A_ze274kI0rZ8ify9acaTE4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"9a9c4d98fd519f05df67036425e0ecc9","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4334b21a-466b-42f5-82f5-6561518bc37e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"a026874b-6165-44a7-8306-d915270b4282","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213664.1779203} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9a9c4d98fd519f05df67036425e0ecc9","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"84b7b368-c876-47ee-a378-3c3f12f6d03e","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213664.1859682} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"9a9c4d98fd519f05df67036425e0ecc9","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4334b21a-466b-42f5-82f5-6561518bc37e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"ebd8438a-4066-41a7-811a-e5a6e7f78781","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213664.205303} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"015a89a8-731e-4069-ab96-e0f52df909bc","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213664.205518} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"9a9c4d98fd519f05df67036425e0ecc9","responseTime":24,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4334b21a-466b-42f5-82f5-6561518bc37e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4334b21a-466b-42f5-82f5-6561518bc37e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:24.205281302Z"}]},"request_id":"60a2671a-5279-4c4e-8957-9ed0babdafd2","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213664.213478} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"9a9c4d98fd519f05df67036425e0ecc9","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"9a9c4d98fd519f05df67036425e0ecc9"} device-1 | {"level":"info","message":"POST /devices? 201 61ms","method":"POST","requestID":"9a9c4d98fd519f05df67036425e0ecc9","responseTime":61,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"17/Jul/2024:10:54:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"278","request_time":"0.067","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9a9c4d98fd519f05df67036425e0ecc9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2NH0.0HG9JQ7EonxQcB6kirP4A_ze274kI0rZ8ify9acaTE4","level":"info","message":"auth send jwt","requestID":"867acc42e1c1a2f07aff045070aeb8c7"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"867acc42e1c1a2f07aff045070aeb8c7","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"867acc42e1c1a2f07aff045070aeb8c7"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":129,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:24Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":129,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.180949,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:24Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"867acc42e1c1a2f07aff045070aeb8c7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213664,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2NH0.0HG9JQ7EonxQcB6kirP4A_ze274kI0rZ8ify9acaTE4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"867acc42e1c1a2f07aff045070aeb8c7","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ec8736b-ece7-4681-9a36-1c6e8cd7c209","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"11c6ff86-54f5-48df-9c72-fb260decd78a","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213664.2533202} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"867acc42e1c1a2f07aff045070aeb8c7","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0777a564-c929-467c-a4e8-d7d54a215e94","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213664.2610738} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"867acc42e1c1a2f07aff045070aeb8c7","responseTime":7,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ec8736b-ece7-4681-9a36-1c6e8cd7c209","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"ea230e6f-3c3f-46d1-bdde-16323a209ce0","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213664.2713819} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a50aa4aa-72f7-4860-8e00-f53093835677","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213664.2716866} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"867acc42e1c1a2f07aff045070aeb8c7","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ec8736b-ece7-4681-9a36-1c6e8cd7c209","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ec8736b-ece7-4681-9a36-1c6e8cd7c209","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:24.271367514Z"}]},"request_id":"62f0efe2-73fe-4928-b7ad-25d8d5b86bcc","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213664.2758906} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"867acc42e1c1a2f07aff045070aeb8c7","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"867acc42e1c1a2f07aff045070aeb8c7"} gateway-1 | {"time_local":"17/Jul/2024:10:54:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"1069","request_time":"0.059","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"867acc42e1c1a2f07aff045070aeb8c7"} device-1 | {"level":"info","message":"POST /devices? 201 53ms","method":"POST","requestID":"867acc42e1c1a2f07aff045070aeb8c7","responseTime":53,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2NH0.0HG9JQ7EonxQcB6kirP4A_ze274kI0rZ8ify9acaTE4","level":"info","message":"auth send jwt","requestID":"12abcbe4270fe8808aa5ec78c2f16c96"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"12abcbe4270fe8808aa5ec78c2f16c96","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"12abcbe4270fe8808aa5ec78c2f16c96"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":130,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:24Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":130,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.146334,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:24Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"12abcbe4270fe8808aa5ec78c2f16c96","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213664,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2NH0.0HG9JQ7EonxQcB6kirP4A_ze274kI0rZ8ify9acaTE4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"12abcbe4270fe8808aa5ec78c2f16c96","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fad0fac5e-c92b-4bd6-9d67-524dacebe4f6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"574a7472-6eab-4dfd-acf7-0858e2ac5f37","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213664.3077953} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"12abcbe4270fe8808aa5ec78c2f16c96","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5107b45c-f6cb-43fa-9589-360370e2dafa","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213664.312819} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"12abcbe4270fe8808aa5ec78c2f16c96","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fad0fac5e-c92b-4bd6-9d67-524dacebe4f6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"39513455-e340-4561-b561-7c80d4b03ee4","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213664.3223693} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"af8ca31f-a2dd-4ee6-bac5-e36b6cb54d39","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213664.3225024} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"12abcbe4270fe8808aa5ec78c2f16c96","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fad0fac5e-c92b-4bd6-9d67-524dacebe4f6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fad0fac5e-c92b-4bd6-9d67-524dacebe4f6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:24.322355906Z"}]},"request_id":"ee8bc896-ce74-466c-904f-a2d2f90b5837","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213664.3290544} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"12abcbe4270fe8808aa5ec78c2f16c96","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"12abcbe4270fe8808aa5ec78c2f16c96"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"12abcbe4270fe8808aa5ec78c2f16c96","responseTime":43,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"17/Jul/2024:10:54:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"1347","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"12abcbe4270fe8808aa5ec78c2f16c96"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2NH0.0HG9JQ7EonxQcB6kirP4A_ze274kI0rZ8ify9acaTE4","level":"info","message":"auth send jwt","requestID":"6399698ffd50da62198c21ba23ba93fb"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6399698ffd50da62198c21ba23ba93fb","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"6399698ffd50da62198c21ba23ba93fb"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":131,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:24Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":131,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.866869,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:24Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"6399698ffd50da62198c21ba23ba93fb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213664,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2NH0.0HG9JQ7EonxQcB6kirP4A_ze274kI0rZ8ify9acaTE4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"6399698ffd50da62198c21ba23ba93fb","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F312f5be8-a491-4df7-a15b-1ffffa6fc4cd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"856adb56-6fc7-48f7-b075-aa0b043901bb","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213664.3702192} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6399698ffd50da62198c21ba23ba93fb","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3b2d2d58-1a97-4639-9f12-d20237d0656c","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213664.3768425} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"6399698ffd50da62198c21ba23ba93fb","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F312f5be8-a491-4df7-a15b-1ffffa6fc4cd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"81630990-ddc6-4e66-9de9-74572ea8a8ac","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213664.3896134} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4268dcaa-ccb4-4854-81f7-941c3ab47ec7","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213664.3896947} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"6399698ffd50da62198c21ba23ba93fb","responseTime":15,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F312f5be8-a491-4df7-a15b-1ffffa6fc4cd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F312f5be8-a491-4df7-a15b-1ffffa6fc4cd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:24.389566621Z"}]},"request_id":"0d4b3a13-e668-4518-83e7-7bdb8e43d035","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213664.394737} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"6399698ffd50da62198c21ba23ba93fb","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"6399698ffd50da62198c21ba23ba93fb"} device-1 | {"level":"info","message":"POST /devices? 201 56ms","method":"POST","requestID":"6399698ffd50da62198c21ba23ba93fb","responseTime":56,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"17/Jul/2024:10:54:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"1070","request_time":"0.062","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6399698ffd50da62198c21ba23ba93fb"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2NH0.0HG9JQ7EonxQcB6kirP4A_ze274kI0rZ8ify9acaTE4","level":"info","message":"auth send jwt","requestID":"58f1137e1ef6865b12ed588f20a03a4d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"58f1137e1ef6865b12ed588f20a03a4d","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"58f1137e1ef6865b12ed588f20a03a4d"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":132,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:24Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":132,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.254357,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:24Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/2ec8736b-ece7-4681-9a36-1c6e8cd7c209","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"58f1137e1ef6865b12ed588f20a03a4d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/2ec8736b-ece7-4681-9a36-1c6e8cd7c209","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213664,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2NH0.0HG9JQ7EonxQcB6kirP4A_ze274kI0rZ8ify9acaTE4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"58f1137e1ef6865b12ed588f20a03a4d","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ec8736b-ece7-4681-9a36-1c6e8cd7c209","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ec8736b-ece7-4681-9a36-1c6e8cd7c209","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:24.271367514Z"}]},"request_id":"d07244da-549d-4cd4-a344-148f0508eafa","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213664.426333} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"58f1137e1ef6865b12ed588f20a03a4d","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9765ee82-245d-40ef-bb6e-0953e81634f9","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213664.4341686} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"58f1137e1ef6865b12ed588f20a03a4d","responseTime":7,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ec8736b-ece7-4681-9a36-1c6e8cd7c209","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ec8736b-ece7-4681-9a36-1c6e8cd7c209","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:24.271367514Z"}]},"request_id":"35ab9493-1860-42ef-b91e-fdfb7e40a130","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213664.4458747} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"58f1137e1ef6865b12ed588f20a03a4d","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"58f1137e1ef6865b12ed588f20a03a4d"} gateway-1 | {"time_local":"17/Jul/2024:10:54:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/2ec8736b-ece7-4681-9a36-1c6e8cd7c209? HTTP/1.1","status": "200","body_bytes_sent":"1141","request_time":"0.046","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"58f1137e1ef6865b12ed588f20a03a4d"} device-1 | {"level":"info","message":"PATCH /devices/2ec8736b-ece7-4681-9a36-1c6e8cd7c209? 200 39ms","method":"PATCH","requestID":"58f1137e1ef6865b12ed588f20a03a4d","responseTime":39,"status":200,"url":"/devices/2ec8736b-ece7-4681-9a36-1c6e8cd7c209?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2NH0.0HG9JQ7EonxQcB6kirP4A_ze274kI0rZ8ify9acaTE4","level":"info","message":"auth send jwt","requestID":"960085a6c832332a415f43faf0156f8d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"960085a6c832332a415f43faf0156f8d","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"960085a6c832332a415f43faf0156f8d"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":133,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:24Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":133,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.052038,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:24Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ad0fac5e-c92b-4bd6-9d67-524dacebe4f6","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"960085a6c832332a415f43faf0156f8d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/ad0fac5e-c92b-4bd6-9d67-524dacebe4f6","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213664,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2NH0.0HG9JQ7EonxQcB6kirP4A_ze274kI0rZ8ify9acaTE4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"960085a6c832332a415f43faf0156f8d","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fad0fac5e-c92b-4bd6-9d67-524dacebe4f6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fad0fac5e-c92b-4bd6-9d67-524dacebe4f6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:24.322355906Z"}]},"request_id":"4dbfd94d-ee54-40e2-8309-7e4af7efa2e8","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213664.475968} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"960085a6c832332a415f43faf0156f8d","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6d58eaf4-0783-468f-9429-9db18a0a157b","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213664.4826772} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"960085a6c832332a415f43faf0156f8d","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fad0fac5e-c92b-4bd6-9d67-524dacebe4f6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fad0fac5e-c92b-4bd6-9d67-524dacebe4f6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:24.322355906Z"}]},"request_id":"d1255c3f-c8ba-4ea6-afdd-019f724ffbac","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213664.4937203} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"960085a6c832332a415f43faf0156f8d","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"960085a6c832332a415f43faf0156f8d"} gateway-1 | {"time_local":"17/Jul/2024:10:54:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/ad0fac5e-c92b-4bd6-9d67-524dacebe4f6? HTTP/1.1","status": "200","body_bytes_sent":"1491","request_time":"0.044","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"960085a6c832332a415f43faf0156f8d"} device-1 | {"level":"info","message":"PATCH /devices/ad0fac5e-c92b-4bd6-9d67-524dacebe4f6? 200 38ms","method":"PATCH","requestID":"960085a6c832332a415f43faf0156f8d","responseTime":38,"status":200,"url":"/devices/ad0fac5e-c92b-4bd6-9d67-524dacebe4f6?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2NH0.0HG9JQ7EonxQcB6kirP4A_ze274kI0rZ8ify9acaTE4","level":"info","message":"auth send jwt","requestID":"d4b8cdc8461c5a47c8d00166c1026ba9"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d4b8cdc8461c5a47c8d00166c1026ba9","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"d4b8cdc8461c5a47c8d00166c1026ba9"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":134,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:24Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":134,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.299974,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:24Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/312f5be8-a491-4df7-a15b-1ffffa6fc4cd","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"d4b8cdc8461c5a47c8d00166c1026ba9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/312f5be8-a491-4df7-a15b-1ffffa6fc4cd","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213664,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2NH0.0HG9JQ7EonxQcB6kirP4A_ze274kI0rZ8ify9acaTE4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d4b8cdc8461c5a47c8d00166c1026ba9","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F312f5be8-a491-4df7-a15b-1ffffa6fc4cd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F312f5be8-a491-4df7-a15b-1ffffa6fc4cd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:24.389566621Z"}]},"request_id":"1757125f-cd8e-4431-a132-91d81e521ac6","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213664.5159404} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d4b8cdc8461c5a47c8d00166c1026ba9","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a8548ca8-3938-44cf-aa4c-9dc6f9b106df","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213664.5235872} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"d4b8cdc8461c5a47c8d00166c1026ba9","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F312f5be8-a491-4df7-a15b-1ffffa6fc4cd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F312f5be8-a491-4df7-a15b-1ffffa6fc4cd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:24.389566621Z"}]},"request_id":"5c093cf1-c629-46d4-8aea-0a19a889bfbe","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213664.5414462} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d4b8cdc8461c5a47c8d00166c1026ba9","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"d4b8cdc8461c5a47c8d00166c1026ba9"} device-1 | {"level":"info","message":"PATCH /devices/312f5be8-a491-4df7-a15b-1ffffa6fc4cd? 200 42ms","method":"PATCH","requestID":"d4b8cdc8461c5a47c8d00166c1026ba9","responseTime":42,"status":200,"url":"/devices/312f5be8-a491-4df7-a15b-1ffffa6fc4cd?"} gateway-1 | {"time_local":"17/Jul/2024:10:54:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/312f5be8-a491-4df7-a15b-1ffffa6fc4cd? HTTP/1.1","status": "200","body_bytes_sent":"1142","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d4b8cdc8461c5a47c8d00166c1026ba9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2NH0.0HG9JQ7EonxQcB6kirP4A_ze274kI0rZ8ify9acaTE4","level":"info","message":"auth send jwt","requestID":"9b9c870e8e4751ac07c03f84ce68112c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9b9c870e8e4751ac07c03f84ce68112c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9b9c870e8e4751ac07c03f84ce68112c"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":135,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:24Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":135,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.297002,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2ec8736b-ece7-4681-9a36-1c6e8cd7c209","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"9b9c870e8e4751ac07c03f84ce68112c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/2ec8736b-ece7-4681-9a36-1c6e8cd7c209","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213664,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2NH0.0HG9JQ7EonxQcB6kirP4A_ze274kI0rZ8ify9acaTE4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9b9c870e8e4751ac07c03f84ce68112c","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ec8736b-ece7-4681-9a36-1c6e8cd7c209","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2ec8736b-ece7-4681-9a36-1c6e8cd7c209","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:24.271367514Z"}]},"request_id":"fe26cbbf-071b-4545-b164-844c55687e68","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213664.5662227} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"9b9c870e8e4751ac07c03f84ce68112c","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":136,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:24Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":136,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.692347,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:24Z"} authorization-1 | {"client_addr":"127.0.0.1:60544","level":"info","msg":"Received request.","req_id":137,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:24Z"} authorization-1 | {"client_addr":"127.0.0.1:60544","level":"info","msg":"Sent response.","req_id":137,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.166971,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/51aa9f08-abde-4f52-9413-6c51edc80bd3","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"9b9c870e8e4751ac07c03f84ce68112c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/51aa9f08-abde-4f52-9413-6c51edc80bd3","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213664,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2NH0.0HG9JQ7EonxQcB6kirP4A_ze274kI0rZ8ify9acaTE4"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"9b9c870e8e4751ac07c03f84ce68112c","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a1724650-6e7f-4f8d-a1a7-4b7401a90084","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"9b9c870e8e4751ac07c03f84ce68112c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/a1724650-6e7f-4f8d-a1a7-4b7401a90084","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213664,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2NH0.0HG9JQ7EonxQcB6kirP4A_ze274kI0rZ8ify9acaTE4"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"9b9c870e8e4751ac07c03f84ce68112c","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34440","level":"info","msg":"Received request.","req_id":138,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:24Z"} authorization-1 | {"client_addr":"127.0.0.1:34454","level":"info","msg":"Received request.","req_id":139,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:24Z"} authorization-1 | {"client_addr":"127.0.0.1:34440","level":"info","msg":"Sent response.","req_id":138,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.843654,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7879c383-568c-4c78-a207-daa287ec4ca2","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"9b9c870e8e4751ac07c03f84ce68112c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/7879c383-568c-4c78-a207-daa287ec4ca2","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213664,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2NH0.0HG9JQ7EonxQcB6kirP4A_ze274kI0rZ8ify9acaTE4"} authorization-1 | {"level":"info","message":"POST /authorize 200 14ms","method":"POST","requestID":"9b9c870e8e4751ac07c03f84ce68112c","responseTime":14,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34454","level":"info","msg":"Sent response.","req_id":139,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":3.041677,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ad0fac5e-c92b-4bd6-9d67-524dacebe4f6","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"9b9c870e8e4751ac07c03f84ce68112c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/ad0fac5e-c92b-4bd6-9d67-524dacebe4f6","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213664,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2NH0.0HG9JQ7EonxQcB6kirP4A_ze274kI0rZ8ify9acaTE4"} authorization-1 | {"level":"info","message":"POST /authorize 200 14ms","method":"POST","requestID":"9b9c870e8e4751ac07c03f84ce68112c","responseTime":14,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9b9c870e8e4751ac07c03f84ce68112c"} gateway-1 | {"time_local":"17/Jul/2024:10:54:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2ec8736b-ece7-4681-9a36-1c6e8cd7c209? HTTP/1.1","status": "200","body_bytes_sent":"1141","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9b9c870e8e4751ac07c03f84ce68112c"} device-1 | {"level":"info","message":"GET /devices/2ec8736b-ece7-4681-9a36-1c6e8cd7c209? 200 45ms","method":"GET","requestID":"9b9c870e8e4751ac07c03f84ce68112c","responseTime":45,"status":200,"url":"/devices/2ec8736b-ece7-4681-9a36-1c6e8cd7c209?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2NH0.0HG9JQ7EonxQcB6kirP4A_ze274kI0rZ8ify9acaTE4","level":"info","message":"auth send jwt","requestID":"771e9281bce81dfa6e79d5fd90ae2ec4"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"771e9281bce81dfa6e79d5fd90ae2ec4","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"771e9281bce81dfa6e79d5fd90ae2ec4"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":140,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:24Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":140,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.442403,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ad0fac5e-c92b-4bd6-9d67-524dacebe4f6","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"771e9281bce81dfa6e79d5fd90ae2ec4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/ad0fac5e-c92b-4bd6-9d67-524dacebe4f6","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213664,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2NH0.0HG9JQ7EonxQcB6kirP4A_ze274kI0rZ8ify9acaTE4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"771e9281bce81dfa6e79d5fd90ae2ec4","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fad0fac5e-c92b-4bd6-9d67-524dacebe4f6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fad0fac5e-c92b-4bd6-9d67-524dacebe4f6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:24.322355906Z"}]},"request_id":"b306040c-e338-4863-8a3c-a3a71e5f93bb","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213664.6204727} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"771e9281bce81dfa6e79d5fd90ae2ec4","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":141,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:24Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":141,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.234619,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:24Z"} authorization-1 | {"client_addr":"127.0.0.1:60544","level":"info","msg":"Received request.","req_id":142,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:24Z"} authorization-1 | {"client_addr":"127.0.0.1:60544","level":"info","msg":"Sent response.","req_id":142,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.22847,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:24Z"} authorization-1 | {"client_addr":"127.0.0.1:34440","level":"info","msg":"Received request.","req_id":143,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:24Z"} authorization-1 | {"client_addr":"127.0.0.1:34440","level":"info","msg":"Sent response.","req_id":143,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.961521,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:24Z"} authorization-1 | {"client_addr":"127.0.0.1:34454","level":"info","msg":"Received request.","req_id":144,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:24Z"} authorization-1 | {"client_addr":"127.0.0.1:34454","level":"info","msg":"Sent response.","req_id":144,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.102328,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7f730d6f-1923-4f7e-aa16-37bb36a78d13","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"771e9281bce81dfa6e79d5fd90ae2ec4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/7f730d6f-1923-4f7e-aa16-37bb36a78d13","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213664,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2NH0.0HG9JQ7EonxQcB6kirP4A_ze274kI0rZ8ify9acaTE4"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"771e9281bce81dfa6e79d5fd90ae2ec4","responseTime":12,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7497e1bd-22df-42b7-8905-6b9ee62d48ea","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"771e9281bce81dfa6e79d5fd90ae2ec4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/7497e1bd-22df-42b7-8905-6b9ee62d48ea","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213664,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2NH0.0HG9JQ7EonxQcB6kirP4A_ze274kI0rZ8ify9acaTE4"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"771e9281bce81dfa6e79d5fd90ae2ec4","responseTime":12,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9039b5be-74c2-420d-8949-96eb72830031","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"771e9281bce81dfa6e79d5fd90ae2ec4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/9039b5be-74c2-420d-8949-96eb72830031","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213664,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2NH0.0HG9JQ7EonxQcB6kirP4A_ze274kI0rZ8ify9acaTE4"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"771e9281bce81dfa6e79d5fd90ae2ec4","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0cce67fe-f3f9-47ff-b2a7-cb71e7d9b6de","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"771e9281bce81dfa6e79d5fd90ae2ec4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/0cce67fe-f3f9-47ff-b2a7-cb71e7d9b6de","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213664,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2NH0.0HG9JQ7EonxQcB6kirP4A_ze274kI0rZ8ify9acaTE4"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"771e9281bce81dfa6e79d5fd90ae2ec4","responseTime":13,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":145,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:24Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":145,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.154033,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:24Z"} authorization-1 | {"client_addr":"127.0.0.1:34462","level":"info","msg":"Received request.","req_id":146,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/312f5be8-a491-4df7-a15b-1ffffa6fc4cd","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"771e9281bce81dfa6e79d5fd90ae2ec4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/312f5be8-a491-4df7-a15b-1ffffa6fc4cd","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213664,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2NH0.0HG9JQ7EonxQcB6kirP4A_ze274kI0rZ8ify9acaTE4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"771e9281bce81dfa6e79d5fd90ae2ec4","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34462","level":"info","msg":"Sent response.","req_id":146,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.222596,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2ec8736b-ece7-4681-9a36-1c6e8cd7c209","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"771e9281bce81dfa6e79d5fd90ae2ec4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/2ec8736b-ece7-4681-9a36-1c6e8cd7c209","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213664,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2NH0.0HG9JQ7EonxQcB6kirP4A_ze274kI0rZ8ify9acaTE4"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"771e9281bce81dfa6e79d5fd90ae2ec4","responseTime":11,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"771e9281bce81dfa6e79d5fd90ae2ec4"} gateway-1 | {"time_local":"17/Jul/2024:10:54:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ad0fac5e-c92b-4bd6-9d67-524dacebe4f6? HTTP/1.1","status": "200","body_bytes_sent":"1491","request_time":"0.059","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"771e9281bce81dfa6e79d5fd90ae2ec4"} device-1 | {"level":"info","message":"GET /devices/ad0fac5e-c92b-4bd6-9d67-524dacebe4f6? 200 53ms","method":"GET","requestID":"771e9281bce81dfa6e79d5fd90ae2ec4","responseTime":53,"status":200,"url":"/devices/ad0fac5e-c92b-4bd6-9d67-524dacebe4f6?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2NH0.0HG9JQ7EonxQcB6kirP4A_ze274kI0rZ8ify9acaTE4","level":"info","message":"auth send jwt","requestID":"9a9bba1560d7b49755f1f58ab49da1da"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"9a9bba1560d7b49755f1f58ab49da1da","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9a9bba1560d7b49755f1f58ab49da1da"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":147,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:24Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":147,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.465415,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/312f5be8-a491-4df7-a15b-1ffffa6fc4cd","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"9a9bba1560d7b49755f1f58ab49da1da","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/312f5be8-a491-4df7-a15b-1ffffa6fc4cd","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213664,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2NH0.0HG9JQ7EonxQcB6kirP4A_ze274kI0rZ8ify9acaTE4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9a9bba1560d7b49755f1f58ab49da1da","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F312f5be8-a491-4df7-a15b-1ffffa6fc4cd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F312f5be8-a491-4df7-a15b-1ffffa6fc4cd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:24.389566621Z"}]},"request_id":"e3d95f80-c8ea-4990-b75a-43c9803376e3","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213664.6839306} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9a9bba1560d7b49755f1f58ab49da1da","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":148,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:24Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":148,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.165994,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:24Z"} authorization-1 | {"client_addr":"127.0.0.1:60544","level":"info","msg":"Received request.","req_id":149,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:24Z"} authorization-1 | {"client_addr":"127.0.0.1:60544","level":"info","msg":"Sent response.","req_id":149,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.160548,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:24Z"} authorization-1 | {"client_addr":"127.0.0.1:34440","level":"info","msg":"Received request.","req_id":150,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:24Z"} authorization-1 | {"client_addr":"127.0.0.1:34440","level":"info","msg":"Sent response.","req_id":150,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.628332,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:24Z"} authorization-1 | {"client_addr":"127.0.0.1:34454","level":"info","msg":"Received request.","req_id":151,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/62aef430-8718-4888-8065-31137fa0911e","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"9a9bba1560d7b49755f1f58ab49da1da","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/62aef430-8718-4888-8065-31137fa0911e","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213664,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2NH0.0HG9JQ7EonxQcB6kirP4A_ze274kI0rZ8ify9acaTE4"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"9a9bba1560d7b49755f1f58ab49da1da","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1d0be960-384e-4015-a6fd-3a23e0955e15","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"9a9bba1560d7b49755f1f58ab49da1da","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/1d0be960-384e-4015-a6fd-3a23e0955e15","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213664,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2NH0.0HG9JQ7EonxQcB6kirP4A_ze274kI0rZ8ify9acaTE4"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"9a9bba1560d7b49755f1f58ab49da1da","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4334b21a-466b-42f5-82f5-6561518bc37e","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"9a9bba1560d7b49755f1f58ab49da1da","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/4334b21a-466b-42f5-82f5-6561518bc37e","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213664,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2NH0.0HG9JQ7EonxQcB6kirP4A_ze274kI0rZ8ify9acaTE4"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"9a9bba1560d7b49755f1f58ab49da1da","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34454","level":"info","msg":"Sent response.","req_id":151,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.291211,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2ec8736b-ece7-4681-9a36-1c6e8cd7c209","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"9a9bba1560d7b49755f1f58ab49da1da","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/2ec8736b-ece7-4681-9a36-1c6e8cd7c209","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213664,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2NH0.0HG9JQ7EonxQcB6kirP4A_ze274kI0rZ8ify9acaTE4"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"9a9bba1560d7b49755f1f58ab49da1da","responseTime":11,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9a9bba1560d7b49755f1f58ab49da1da"} gateway-1 | {"time_local":"17/Jul/2024:10:54:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/312f5be8-a491-4df7-a15b-1ffffa6fc4cd? HTTP/1.1","status": "200","body_bytes_sent":"1142","request_time":"0.052","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9a9bba1560d7b49755f1f58ab49da1da"} device-1 | {"level":"info","message":"GET /devices/312f5be8-a491-4df7-a15b-1ffffa6fc4cd? 200 45ms","method":"GET","requestID":"9a9bba1560d7b49755f1f58ab49da1da","responseTime":45,"status":200,"url":"/devices/312f5be8-a491-4df7-a15b-1ffffa6fc4cd?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2NH0.0HG9JQ7EonxQcB6kirP4A_ze274kI0rZ8ify9acaTE4","level":"info","message":"auth send jwt","requestID":"998f1cbb778b9f885832bac634fee8b7"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"998f1cbb778b9f885832bac634fee8b7","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"998f1cbb778b9f885832bac634fee8b7"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":152,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:24Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":152,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.247196,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:24Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"998f1cbb778b9f885832bac634fee8b7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213664,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2NH0.0HG9JQ7EonxQcB6kirP4A_ze274kI0rZ8ify9acaTE4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"998f1cbb778b9f885832bac634fee8b7","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2e978348-2036-4d16-9dd5-c3d20c774409","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"c5793aae-12fa-4c3e-8b7d-0825fc67112f","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213664.7513928} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"998f1cbb778b9f885832bac634fee8b7","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"900d0dd5-f77e-4e4b-b31c-e72f680b6a19","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213664.7592201} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"998f1cbb778b9f885832bac634fee8b7","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2e978348-2036-4d16-9dd5-c3d20c774409","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"9e244091-bbbe-4529-9366-7423c95d8865","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213664.7740738} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cef12fc5-b01e-41f5-8005-0245b9843593","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213664.7742572} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"998f1cbb778b9f885832bac634fee8b7","responseTime":18,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2e978348-2036-4d16-9dd5-c3d20c774409","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2e978348-2036-4d16-9dd5-c3d20c774409","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:24.774045315Z"}]},"request_id":"1fad90fd-449b-411e-a8d1-22dbaed4564b","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213664.7815375} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"998f1cbb778b9f885832bac634fee8b7","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"998f1cbb778b9f885832bac634fee8b7"} gateway-1 | {"time_local":"17/Jul/2024:10:54:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"284","request_time":"0.065","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"998f1cbb778b9f885832bac634fee8b7"} device-1 | {"level":"info","message":"POST /devices? 201 59ms","method":"POST","requestID":"998f1cbb778b9f885832bac634fee8b7","responseTime":59,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2NH0.0HG9JQ7EonxQcB6kirP4A_ze274kI0rZ8ify9acaTE4","level":"info","message":"auth send jwt","requestID":"7391d5cf79bb6deb0c4319ba0812509f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7391d5cf79bb6deb0c4319ba0812509f","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"7391d5cf79bb6deb0c4319ba0812509f"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":153,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:24Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":153,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":2.12853,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:24Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"7391d5cf79bb6deb0c4319ba0812509f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213664,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2NH0.0HG9JQ7EonxQcB6kirP4A_ze274kI0rZ8ify9acaTE4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"7391d5cf79bb6deb0c4319ba0812509f","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc7025a2e-2369-4cd4-ab59-836bb6cdcce6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"4cb47172-945a-476c-8e05-9dd4253ac603","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213664.8191915} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"7391d5cf79bb6deb0c4319ba0812509f","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"628e9f33-dee0-420d-8952-bd76ca189bc0","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213664.8266015} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"7391d5cf79bb6deb0c4319ba0812509f","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc7025a2e-2369-4cd4-ab59-836bb6cdcce6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"81c308e9-f68c-4140-b760-c6ad2f2b6a91","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213664.8385937} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c1b6cc17-7c7d-4e6f-a5f0-c5e96777836a","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213664.8387856} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"7391d5cf79bb6deb0c4319ba0812509f","responseTime":16,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc7025a2e-2369-4cd4-ab59-836bb6cdcce6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc7025a2e-2369-4cd4-ab59-836bb6cdcce6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:24.838569881Z"}]},"request_id":"a06e92ea-2ff7-4726-aae9-b2bde5a9c3ab","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213664.8462992} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"7391d5cf79bb6deb0c4319ba0812509f","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"7391d5cf79bb6deb0c4319ba0812509f"} gateway-1 | {"time_local":"17/Jul/2024:10:54:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"545","request_time":"0.063","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7391d5cf79bb6deb0c4319ba0812509f"} device-1 | {"level":"info","message":"POST /devices? 201 57ms","method":"POST","requestID":"7391d5cf79bb6deb0c4319ba0812509f","responseTime":57,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2NH0.0HG9JQ7EonxQcB6kirP4A_ze274kI0rZ8ify9acaTE4","level":"info","message":"auth send jwt","requestID":"f96de452ac13a6a0f4994a96524ee567"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"f96de452ac13a6a0f4994a96524ee567","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"f96de452ac13a6a0f4994a96524ee567"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":154,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:24Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":154,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.490381,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:24Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f96de452ac13a6a0f4994a96524ee567","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213664,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2NH0.0HG9JQ7EonxQcB6kirP4A_ze274kI0rZ8ify9acaTE4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f96de452ac13a6a0f4994a96524ee567","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54c88ee8-3acd-4f92-96dd-eb5336627160","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"195c70f0-e27b-4734-8ce4-cc4b20e15fa5","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213664.8901052} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f96de452ac13a6a0f4994a96524ee567","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d9675cd7-7f59-4426-8153-6b572319d2f5","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213664.8982215} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"f96de452ac13a6a0f4994a96524ee567","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54c88ee8-3acd-4f92-96dd-eb5336627160","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"43259daf-62d9-4900-a3bf-77ca77f43e63","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213664.9116733} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2a63966c-8463-41c9-bbaa-4adaffb39018","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213664.9119852} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"f96de452ac13a6a0f4994a96524ee567","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54c88ee8-3acd-4f92-96dd-eb5336627160","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54c88ee8-3acd-4f92-96dd-eb5336627160","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:24.911640061Z"}]},"request_id":"f97184cc-316d-4d0b-a617-b0a88acc0bae","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213664.9193907} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"f96de452ac13a6a0f4994a96524ee567","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"f96de452ac13a6a0f4994a96524ee567"} gateway-1 | {"time_local":"17/Jul/2024:10:54:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.071","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f96de452ac13a6a0f4994a96524ee567"} device-1 | {"level":"info","message":"POST /devices? 201 63ms","method":"POST","requestID":"f96de452ac13a6a0f4994a96524ee567","responseTime":63,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"07cf9df63a39ddfb2a8b515fcce95674","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"07cf9df63a39ddfb2a8b515fcce95674","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"17/Jul/2024:10:54:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/54c88ee8-3acd-4f92-96dd-eb5336627160/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"07cf9df63a39ddfb2a8b515fcce95674"} device-1 | {"level":"info","message":"OPTIONS /devices/54c88ee8-3acd-4f92-96dd-eb5336627160/websocket 200 1ms","method":"OPTIONS","requestID":"07cf9df63a39ddfb2a8b515fcce95674","responseTime":1,"status":200,"url":"/devices/54c88ee8-3acd-4f92-96dd-eb5336627160/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2Nn0.SdKXcZ0l4Te9FjslPkWPvkSlf3grCzYZq2ZKCkR6lnk","level":"info","message":"auth send jwt","requestID":"31d3e88fff23d7009a643d3d8c7ec5ed"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"31d3e88fff23d7009a643d3d8c7ec5ed","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"31d3e88fff23d7009a643d3d8c7ec5ed"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":155,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:26Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":155,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.954626,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:26Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/54c88ee8-3acd-4f92-96dd-eb5336627160","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"31d3e88fff23d7009a643d3d8c7ec5ed","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/54c88ee8-3acd-4f92-96dd-eb5336627160","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213666,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2Nn0.SdKXcZ0l4Te9FjslPkWPvkSlf3grCzYZq2ZKCkR6lnk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"31d3e88fff23d7009a643d3d8c7ec5ed","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f979016ff13481077ad3ab3c0aa59d1c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"f979016ff13481077ad3ab3c0aa59d1c","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"17/Jul/2024:10:54:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/2e978348-2036-4d16-9dd5-c3d20c774409/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.003","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"f979016ff13481077ad3ab3c0aa59d1c"} device-1 | {"level":"info","message":"OPTIONS /devices/2e978348-2036-4d16-9dd5-c3d20c774409/websocket 200 0ms","method":"OPTIONS","requestID":"f979016ff13481077ad3ab3c0aa59d1c","responseTime":0,"status":200,"url":"/devices/2e978348-2036-4d16-9dd5-c3d20c774409/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2Nn0.SdKXcZ0l4Te9FjslPkWPvkSlf3grCzYZq2ZKCkR6lnk","level":"info","message":"auth send jwt","requestID":"0b14109bc982d77b7ea9c1cac1a79f30"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"0b14109bc982d77b7ea9c1cac1a79f30","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"0b14109bc982d77b7ea9c1cac1a79f30"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":156,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:26Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"31d3e88fff23d7009a643d3d8c7ec5ed"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":156,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.947232,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:26Z"} gateway-1 | {"time_local":"17/Jul/2024:10:54:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/54c88ee8-3acd-4f92-96dd-eb5336627160/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.028","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"31d3e88fff23d7009a643d3d8c7ec5ed"} device-1 | {"level":"info","message":"POST /devices/54c88ee8-3acd-4f92-96dd-eb5336627160/websocket 200 23ms","method":"POST","requestID":"31d3e88fff23d7009a643d3d8c7ec5ed","responseTime":23,"status":200,"url":"/devices/54c88ee8-3acd-4f92-96dd-eb5336627160/websocket"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/2e978348-2036-4d16-9dd5-c3d20c774409","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0b14109bc982d77b7ea9c1cac1a79f30","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/2e978348-2036-4d16-9dd5-c3d20c774409","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213666,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2Nn0.SdKXcZ0l4Te9FjslPkWPvkSlf3grCzYZq2ZKCkR6lnk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0b14109bc982d77b7ea9c1cac1a79f30","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"0b14109bc982d77b7ea9c1cac1a79f30"} gateway-1 | {"time_local":"17/Jul/2024:10:54:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/2e978348-2036-4d16-9dd5-c3d20c774409/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.024","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"0b14109bc982d77b7ea9c1cac1a79f30"} device-1 | {"level":"info","message":"POST /devices/2e978348-2036-4d16-9dd5-c3d20c774409/websocket 200 19ms","method":"POST","requestID":"0b14109bc982d77b7ea9c1cac1a79f30","responseTime":19,"status":200,"url":"/devices/2e978348-2036-4d16-9dd5-c3d20c774409/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/54c88ee8-3acd-4f92-96dd-eb5336627160' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/2e978348-2036-4d16-9dd5-c3d20c774409' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2Nn0.SdKXcZ0l4Te9FjslPkWPvkSlf3grCzYZq2ZKCkR6lnk","level":"info","message":"auth send jwt","requestID":"6ea166d426ef8b35648ce5571e81e66a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"6ea166d426ef8b35648ce5571e81e66a","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6ea166d426ef8b35648ce5571e81e66a"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":157,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:26Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":157,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.662608,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/54c88ee8-3acd-4f92-96dd-eb5336627160","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"6ea166d426ef8b35648ce5571e81e66a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/54c88ee8-3acd-4f92-96dd-eb5336627160","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213666,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2Nn0.SdKXcZ0l4Te9FjslPkWPvkSlf3grCzYZq2ZKCkR6lnk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6ea166d426ef8b35648ce5571e81e66a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54c88ee8-3acd-4f92-96dd-eb5336627160","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54c88ee8-3acd-4f92-96dd-eb5336627160","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:24.911640061Z"}]},"request_id":"023d2d8d-7c43-4901-a21e-7e0af1baeea1","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213666.923989} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6ea166d426ef8b35648ce5571e81e66a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6ea166d426ef8b35648ce5571e81e66a"} gateway-1 | {"time_local":"17/Jul/2024:10:54:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/54c88ee8-3acd-4f92-96dd-eb5336627160? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6ea166d426ef8b35648ce5571e81e66a"} device-1 | {"level":"info","message":"GET /devices/54c88ee8-3acd-4f92-96dd-eb5336627160? 200 14ms","method":"GET","requestID":"6ea166d426ef8b35648ce5571e81e66a","responseTime":14,"status":200,"url":"/devices/54c88ee8-3acd-4f92-96dd-eb5336627160?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2Nn0.SdKXcZ0l4Te9FjslPkWPvkSlf3grCzYZq2ZKCkR6lnk","level":"info","message":"auth send jwt","requestID":"c5896de27a2be25d088a569086b632eb"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c5896de27a2be25d088a569086b632eb","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"c5896de27a2be25d088a569086b632eb"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":158,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:26Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":158,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.776587,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:26Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"c5896de27a2be25d088a569086b632eb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213666,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2Nn0.SdKXcZ0l4Te9FjslPkWPvkSlf3grCzYZq2ZKCkR6lnk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c5896de27a2be25d088a569086b632eb","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/46a0c49c-4910-4432-89e2-51f56a093715"},"level":"info","message":"Attempting to run experiment","requestID":"c5896de27a2be25d088a569086b632eb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/46a0c49c-4910-4432-89e2-51f56a093715"},"level":"info","message":"Attempting to book experiment","requestID":"c5896de27a2be25d088a569086b632eb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/46a0c49c-4910-4432-89e2-51f56a093715"},"level":"info","message":"Successfully booked experiment","requestID":"c5896de27a2be25d088a569086b632eb"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ef894280-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ef8990a0-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":159,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:26Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":159,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.647615,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c7025a2e-2369-4cd4-ab59-836bb6cdcce6","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"ef894280-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/c7025a2e-2369-4cd4-ab59-836bb6cdcce6","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213666,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2Nn0.SdKXcZ0l4Te9FjslPkWPvkSlf3grCzYZq2ZKCkR6lnk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ef894280-442a-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60544","level":"info","msg":"Received request.","req_id":160,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:26Z"} authorization-1 | {"client_addr":"127.0.0.1:60544","level":"info","msg":"Sent response.","req_id":160,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.084,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/54c88ee8-3acd-4f92-96dd-eb5336627160","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"ef8990a0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/54c88ee8-3acd-4f92-96dd-eb5336627160","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213666,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2Nn0.SdKXcZ0l4Te9FjslPkWPvkSlf3grCzYZq2ZKCkR6lnk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ef8990a0-442a-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc7025a2e-2369-4cd4-ab59-836bb6cdcce6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc7025a2e-2369-4cd4-ab59-836bb6cdcce6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:24.838569881Z"}]},"request_id":"3837fd68-31a1-4966-bcb4-ae8d3b9735c0","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213666.994294} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ef894280-442a-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54c88ee8-3acd-4f92-96dd-eb5336627160","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54c88ee8-3acd-4f92-96dd-eb5336627160","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:24.911640061Z"}]},"request_id":"9b601b82-04cd-43d9-84b5-2b4371ad60d1","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213666.9955807} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ef8990a0-442a-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ef8990a0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/54c88ee8-3acd-4f92-96dd-eb5336627160? 200 16ms","method":"GET","requestID":"ef8990a0-442a-11ef-8685-a1e9f27e6f28","responseTime":16,"status":200,"url":"/devices/54c88ee8-3acd-4f92-96dd-eb5336627160?"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":161,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:27Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":161,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.177072,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2e978348-2036-4d16-9dd5-c3d20c774409","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"ef894280-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/2e978348-2036-4d16-9dd5-c3d20c774409","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213666,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2Nn0.SdKXcZ0l4Te9FjslPkWPvkSlf3grCzYZq2ZKCkR6lnk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ef894280-442a-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ef894280-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/c7025a2e-2369-4cd4-ab59-836bb6cdcce6? 200 23ms","method":"GET","requestID":"ef894280-442a-11ef-8685-a1e9f27e6f28","responseTime":23,"status":200,"url":"/devices/c7025a2e-2369-4cd4-ab59-836bb6cdcce6?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/46a0c49c-4910-4432-89e2-51f56a093715"},"level":"info","message":"Setting up experiment","requestID":"c5896de27a2be25d088a569086b632eb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/46a0c49c-4910-4432-89e2-51f56a093715"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"c5896de27a2be25d088a569086b632eb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/46a0c49c-4910-4432-89e2-51f56a093715"},"level":"info","message":"Successfully locked booking for experiment","requestID":"c5896de27a2be25d088a569086b632eb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/46a0c49c-4910-4432-89e2-51f56a093715"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"c5896de27a2be25d088a569086b632eb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/46a0c49c-4910-4432-89e2-51f56a093715"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"c5896de27a2be25d088a569086b632eb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/46a0c49c-4910-4432-89e2-51f56a093715"},"level":"info","message":"Attempting to update booking for experiment","requestID":"c5896de27a2be25d088a569086b632eb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/46a0c49c-4910-4432-89e2-51f56a093715"},"level":"info","message":"Successfully updated booking for experiment","requestID":"c5896de27a2be25d088a569086b632eb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/46a0c49c-4910-4432-89e2-51f56a093715"},"level":"info","message":"Successfully set up experiment","requestID":"c5896de27a2be25d088a569086b632eb"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ef95c5a0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ef9613c0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ef9688f0-442a-11ef-8685-a1e9f27e6f28"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/46a0c49c-4910-4432-89e2-51f56a093715"},"level":"info","message":"Successfully running experiment","requestID":"c5896de27a2be25d088a569086b632eb"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":162,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:27Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":162,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.594103,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:27Z"} authorization-1 | {"client_addr":"127.0.0.1:60544","level":"info","msg":"Received request.","req_id":163,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2e978348-2036-4d16-9dd5-c3d20c774409","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"ef95c5a0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/2e978348-2036-4d16-9dd5-c3d20c774409","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213666,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2Nn0.SdKXcZ0l4Te9FjslPkWPvkSlf3grCzYZq2ZKCkR6lnk"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"ef95c5a0-442a-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60544","level":"info","msg":"Sent response.","req_id":163,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.244198,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:27Z"} authorization-1 | {"client_addr":"127.0.0.1:34440","level":"info","msg":"Received request.","req_id":164,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/54c88ee8-3acd-4f92-96dd-eb5336627160","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"ef9613c0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/54c88ee8-3acd-4f92-96dd-eb5336627160","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213666,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2Nn0.SdKXcZ0l4Te9FjslPkWPvkSlf3grCzYZq2ZKCkR6lnk"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"ef9613c0-442a-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34440","level":"info","msg":"Sent response.","req_id":164,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.747601,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:27Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2e978348-2036-4d16-9dd5-c3d20c774409","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"babb8219-44f9-4ec6-be67-b113ac53f3ac","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213667.0805624} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2e978348-2036-4d16-9dd5-c3d20c774409","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"ef9688f0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2e978348-2036-4d16-9dd5-c3d20c774409","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"ef9688f0-442a-11ef-8685-a1e9f27e6f28","responseTime":12,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2e978348-2036-4d16-9dd5-c3d20c774409","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2e978348-2036-4d16-9dd5-c3d20c774409","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:24.774045315Z"}]},"request_id":"f1173969-6ad6-4c09-b709-86a0c292de66","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213667.0841224} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54c88ee8-3acd-4f92-96dd-eb5336627160","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54c88ee8-3acd-4f92-96dd-eb5336627160","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:24.911640061Z"}]},"request_id":"a3da1229-abcd-4407-a35d-09498a3964b3","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213667.0866685} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"ef95c5a0-442a-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"ef9613c0-442a-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F46a0c49c-4910-4432-89e2-51f56a093715#owner@http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F46a0c49c-4910-4432-89e2-51f56a093715","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"a19bc915-f7cf-4fe6-9e2a-71c3bf4f6640","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213667.0976512} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ef9688f0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/2e978348-2036-4d16-9dd5-c3d20c774409/signaling 200 28ms","method":"POST","requestID":"ef9688f0-442a-11ef-8685-a1e9f27e6f28","responseTime":28,"status":200,"url":"/devices/2e978348-2036-4d16-9dd5-c3d20c774409/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ef95c5a0-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c5c333c9-732f-4b5e-beb7-06327fe1d00b","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213667.0987532} device-1 | {"level":"info","message":"GET /devices/2e978348-2036-4d16-9dd5-c3d20c774409? 200 34ms","method":"GET","requestID":"ef95c5a0-442a-11ef-8685-a1e9f27e6f28","responseTime":34,"status":200,"url":"/devices/2e978348-2036-4d16-9dd5-c3d20c774409?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ef9613c0-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"c5896de27a2be25d088a569086b632eb","responseTime":21,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"GET /devices/54c88ee8-3acd-4f92-96dd-eb5336627160? 200 33ms","method":"GET","requestID":"ef9613c0-442a-11ef-8685-a1e9f27e6f28","responseTime":33,"status":200,"url":"/devices/54c88ee8-3acd-4f92-96dd-eb5336627160?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ef9b43e0-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":165,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:27Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ef9be020-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54c88ee8-3acd-4f92-96dd-eb5336627160","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"82f3af4c-6a12-4e69-9bf0-115941d5d224","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213667.106647} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":165,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.527047,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/54c88ee8-3acd-4f92-96dd-eb5336627160","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"ef9b43e0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/54c88ee8-3acd-4f92-96dd-eb5336627160","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ef9b43e0-442a-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/46a0c49c-4910-4432-89e2-51f56a093715","user":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"c5896de27a2be25d088a569086b632eb"} authorization-1 | {"client_addr":"127.0.0.1:60544","level":"info","msg":"Received request.","req_id":166,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:27Z"} gateway-1 | {"time_local":"17/Jul/2024:10:54:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"807","request_time":"0.180","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c5896de27a2be25d088a569086b632eb"} experiment-1 | {"level":"info","message":"POST /experiments? 201 175ms","method":"POST","requestID":"c5896de27a2be25d088a569086b632eb","responseTime":175,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ef9b43e0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/54c88ee8-3acd-4f92-96dd-eb5336627160/signaling 200 10ms","method":"POST","requestID":"ef9b43e0-442a-11ef-8685-a1e9f27e6f28","responseTime":10,"status":200,"url":"/devices/54c88ee8-3acd-4f92-96dd-eb5336627160/signaling"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2e978348-2036-4d16-9dd5-c3d20c774409","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"02f296e5-a40b-4eae-a185-3fbb21916651","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213667.1136873} authorization-1 | {"client_addr":"127.0.0.1:60544","level":"info","msg":"Sent response.","req_id":166,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.55689,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2e978348-2036-4d16-9dd5-c3d20c774409","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"ef9be020-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2e978348-2036-4d16-9dd5-c3d20c774409","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ef9be020-442a-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2N30.v_sFeS3LtHFzhlv72qJccaMj0Jjy5S4fAy8VEz9vBTk","level":"info","message":"auth send jwt","requestID":"e389745539751669f18300f68010b797"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e389745539751669f18300f68010b797","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e389745539751669f18300f68010b797"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ef9be020-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/2e978348-2036-4d16-9dd5-c3d20c774409/signaling 200 13ms","method":"POST","requestID":"ef9be020-442a-11ef-8685-a1e9f27e6f28","responseTime":13,"status":200,"url":"/devices/2e978348-2036-4d16-9dd5-c3d20c774409/signaling"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":167,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:27Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":167,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.81339,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2e978348-2036-4d16-9dd5-c3d20c774409","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"e389745539751669f18300f68010b797","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/2e978348-2036-4d16-9dd5-c3d20c774409","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213667,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2N30.v_sFeS3LtHFzhlv72qJccaMj0Jjy5S4fAy8VEz9vBTk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e389745539751669f18300f68010b797","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ef9e5120-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":168,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:27Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2e978348-2036-4d16-9dd5-c3d20c774409","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2e978348-2036-4d16-9dd5-c3d20c774409","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:24.774045315Z"}]},"request_id":"d8e15319-8d88-49fa-8f24-328685f3c9b3","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213667.1258793} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54c88ee8-3acd-4f92-96dd-eb5336627160","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1fb331eb-f9ba-4c8d-9b57-cd1388f83342","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213667.1259725} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e389745539751669f18300f68010b797","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":168,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.173627,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/54c88ee8-3acd-4f92-96dd-eb5336627160","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"ef9e5120-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/54c88ee8-3acd-4f92-96dd-eb5336627160","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ef9e5120-442a-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e389745539751669f18300f68010b797"} gateway-1 | {"time_local":"17/Jul/2024:10:54:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2e978348-2036-4d16-9dd5-c3d20c774409? HTTP/1.1","status": "200","body_bytes_sent":"283","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e389745539751669f18300f68010b797"} device-1 | {"level":"info","message":"GET /devices/2e978348-2036-4d16-9dd5-c3d20c774409? 200 13ms","method":"GET","requestID":"e389745539751669f18300f68010b797","responseTime":13,"status":200,"url":"/devices/2e978348-2036-4d16-9dd5-c3d20c774409?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ef9e5120-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/54c88ee8-3acd-4f92-96dd-eb5336627160/signaling 200 9ms","method":"POST","requestID":"ef9e5120-442a-11ef-8685-a1e9f27e6f28","responseTime":9,"status":200,"url":"/devices/54c88ee8-3acd-4f92-96dd-eb5336627160/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/46a0c49c-4910-4432-89e2-51f56a093715"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"c5896de27a2be25d088a569086b632eb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/46a0c49c-4910-4432-89e2-51f56a093715"},"level":"info","message":"Building connection plan","requestID":"c5896de27a2be25d088a569086b632eb"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"886ff848-b2f6-4ae9-b492-814cc7ee43a7"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"89432fed-3b58-4306-88c5-e140411a07fd"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"1b7d8910-6b25-47a2-afd9-c5e3831ecc0d"}]},"level":"info","message":"Built pairwise service configurations","requestID":"c5896de27a2be25d088a569086b632eb"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/2e978348-2036-4d16-9dd5-c3d20c774409"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/54c88ee8-3acd-4f92-96dd-eb5336627160"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"c5896de27a2be25d088a569086b632eb"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2N30.v_sFeS3LtHFzhlv72qJccaMj0Jjy5S4fAy8VEz9vBTk","level":"info","message":"auth send jwt","requestID":"062b805d2deff7318e0dbd36fd2eb974"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"efa025e0-442a-11ef-8685-a1e9f27e6f28"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"062b805d2deff7318e0dbd36fd2eb974","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"062b805d2deff7318e0dbd36fd2eb974"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":169,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:27Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":169,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.633648,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:27Z"} authorization-1 | {"client_addr":"127.0.0.1:60544","level":"info","msg":"Received request.","req_id":170,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:27Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"efa025e0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213666,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2Nn0.SdKXcZ0l4Te9FjslPkWPvkSlf3grCzYZq2ZKCkR6lnk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"efa025e0-442a-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60544","level":"info","msg":"Sent response.","req_id":170,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.504755,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/54c88ee8-3acd-4f92-96dd-eb5336627160","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"062b805d2deff7318e0dbd36fd2eb974","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/54c88ee8-3acd-4f92-96dd-eb5336627160","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213667,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2N30.v_sFeS3LtHFzhlv72qJccaMj0Jjy5S4fAy8VEz9vBTk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"062b805d2deff7318e0dbd36fd2eb974","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54c88ee8-3acd-4f92-96dd-eb5336627160","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54c88ee8-3acd-4f92-96dd-eb5336627160","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:24.911640061Z"}]},"request_id":"30998ef0-4cd4-4e3f-8e4e-8c18c1d4f2e0","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213667.1441607} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"062b805d2deff7318e0dbd36fd2eb974","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"062b805d2deff7318e0dbd36fd2eb974"} gateway-1 | {"time_local":"17/Jul/2024:10:54:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/54c88ee8-3acd-4f92-96dd-eb5336627160? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"062b805d2deff7318e0dbd36fd2eb974"} device-1 | {"level":"info","message":"GET /devices/54c88ee8-3acd-4f92-96dd-eb5336627160? 200 12ms","method":"GET","requestID":"062b805d2deff7318e0dbd36fd2eb974","responseTime":12,"status":200,"url":"/devices/54c88ee8-3acd-4f92-96dd-eb5336627160?"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"aa077716-13ca-4c25-86fb-13fcdeaf64e4","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213667.1492243} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"18449e64-4517-4349-bf05-bfa5d5de4d5b","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213667.1494675} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"efa025e0-442a-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"efa025e0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"efa025e0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/3c0d9f24-2a1f-48f2-8c96-173109ed3e49'","requestID":"efa025e0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/3c0d9f24-2a1f-48f2-8c96-173109ed3e49'","requestID":"efa025e0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"efa025e0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 29ms","method":"POST","requestID":"efa025e0-442a-11ef-8685-a1e9f27e6f28","responseTime":29,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"efa025e0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/3c0d9f24-2a1f-48f2-8c96-173109ed3e49","device":"54c88ee8-3acd-4f92-96dd-eb5336627160","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":true} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/3c0d9f24-2a1f-48f2-8c96-173109ed3e49","device":"2e978348-2036-4d16-9dd5-c3d20c774409","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":false} device-1 | {"device":"2e978348-2036-4d16-9dd5-c3d20c774409","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"2e978348-2036-4d16-9dd5-c3d20c774409","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/46a0c49c-4910-4432-89e2-51f56a093715"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"c5896de27a2be25d088a569086b632eb"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"efa92690-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":171,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:27Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2e978348-2036-4d16-9dd5-c3d20c774409","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e9fba7b2-6246-4a0e-b5f5-244d5f9ba850","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213667.1972651} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":171,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.273856,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2e978348-2036-4d16-9dd5-c3d20c774409","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"efa92690-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2e978348-2036-4d16-9dd5-c3d20c774409","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"efa92690-442a-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"efa92690-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/2e978348-2036-4d16-9dd5-c3d20c774409/signaling 200 8ms","method":"POST","requestID":"efa92690-442a-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/devices/2e978348-2036-4d16-9dd5-c3d20c774409/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"efaaad30-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":172,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:27Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54c88ee8-3acd-4f92-96dd-eb5336627160","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5652825b-8dde-4a2c-8dc0-905480f13832","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213667.2079823} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":172,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.236102,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/54c88ee8-3acd-4f92-96dd-eb5336627160","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"efaaad30-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/54c88ee8-3acd-4f92-96dd-eb5336627160","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"efaaad30-442a-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"efaaad30-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/54c88ee8-3acd-4f92-96dd-eb5336627160/signaling 200 10ms","method":"POST","requestID":"efaaad30-442a-11ef-8685-a1e9f27e6f28","responseTime":10,"status":200,"url":"/devices/54c88ee8-3acd-4f92-96dd-eb5336627160/signaling"} device-1 | {"device":"54c88ee8-3acd-4f92-96dd-eb5336627160","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"54c88ee8-3acd-4f92-96dd-eb5336627160","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 5085276065375236990 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:P9QG\r\na=ice-pwd:tBv+xsrBkPlJEWELlZ7GosJL\r\na=ice-options:trickle\r\na=fingerprint:sha-256 31:8C:D4:8A:CE:53:99:79:B6:05:37:49:F6:18:51:60:43:57:60:AD:42:E2:A0:CC:6A:7B:11:C8:35:20:CE:C4\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"54c88ee8-3acd-4f92-96dd-eb5336627160","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 995095489299235287 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:cMtw\r\na=ice-pwd:LMJ/qIEbNGDpXou0kIAsU4XM\r\na=ice-options:trickle\r\na=fingerprint:sha-256 95:63:10:8D:10:E1:34:B4:3C:28:FE:D1:73:01:06:AE:F1:E7:C8:F3:B4:A1:04:93:C8:45:6C:65:1E:5A:D7:9C\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"2e978348-2036-4d16-9dd5-c3d20c774409","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:2045645250 1 udp 2113937151 308e33bd-5230-49a3-af70-13c42a542c4f.local 56868 typ host generation 0 ufrag cMtw network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"2e978348-2036-4d16-9dd5-c3d20c774409","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3938824401 1 udp 1677729535 141.24.211.56 56868 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag cMtw network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"2e978348-2036-4d16-9dd5-c3d20c774409","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/2e978348-2036-4d16-9dd5-c3d20c774409'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/2e978348-2036-4d16-9dd5-c3d20c774409'"} device-1 | {"content":{"candidate":"candidate:4111097517 1 udp 2113937151 c661aa38-8f43-432e-820d-e9f22321be82.local 37826 typ host generation 0 ufrag P9QG network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"54c88ee8-3acd-4f92-96dd-eb5336627160","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1898394834 1 udp 1677729535 141.24.211.56 37826 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag P9QG network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"54c88ee8-3acd-4f92-96dd-eb5336627160","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/54c88ee8-3acd-4f92-96dd-eb5336627160'"} device-1 | {"device":"54c88ee8-3acd-4f92-96dd-eb5336627160","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/3c0d9f24-2a1f-48f2-8c96-173109ed3e49' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"3c0d9f24-2a1f-48f2-8c96-173109ed3e49","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b2fa4e45b535bced0720b94b408a0944","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"b2fa4e45b535bced0720b94b408a0944","responseTime":1,"status":200,"url":"/auth"} device-1 | {"device":"2e978348-2036-4d16-9dd5-c3d20c774409","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"2e978348-2036-4d16-9dd5-c3d20c774409","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"54c88ee8-3acd-4f92-96dd-eb5336627160","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/2e978348-2036-4d16-9dd5-c3d20c774409"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/54c88ee8-3acd-4f92-96dd-eb5336627160"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/3c0d9f24-2a1f-48f2-8c96-173109ed3e49"}}},"level":"info","message":"received a callback","requestID":"b2fa4e45b535bced0720b94b408a0944"} device-1 | {"device":"2e978348-2036-4d16-9dd5-c3d20c774409","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"54c88ee8-3acd-4f92-96dd-eb5336627160","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 6ms","method":"POST","requestID":"b2fa4e45b535bced0720b94b408a0944","responseTime":6,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:54:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.010","http_referrer":"","http_user_agent":"node-fetch","requestID":"b2fa4e45b535bced0720b94b408a0944"} device-1 | {"device":"2e978348-2036-4d16-9dd5-c3d20c774409","deviceName":"Internal Test Device","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"3c0d9f24-2a1f-48f2-8c96-173109ed3e49","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"3c0d9f24-2a1f-48f2-8c96-173109ed3e49","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/3c0d9f24-2a1f-48f2-8c96-173109ed3e49' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"3c0d9f24-2a1f-48f2-8c96-173109ed3e49","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a23571ced099724fa4076825b03207aa","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"a23571ced099724fa4076825b03207aa","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/2e978348-2036-4d16-9dd5-c3d20c774409"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/54c88ee8-3acd-4f92-96dd-eb5336627160"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/3c0d9f24-2a1f-48f2-8c96-173109ed3e49"}}},"level":"info","message":"received a callback","requestID":"a23571ced099724fa4076825b03207aa"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"efb9a150-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":173,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:27Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F3c0d9f24-2a1f-48f2-8c96-173109ed3e49","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b8c95c13-ec3c-40a3-a6dc-030be110c18e","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213667.3060248} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":173,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":1.992282,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/3c0d9f24-2a1f-48f2-8c96-173109ed3e49","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"efb9a150-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/3c0d9f24-2a1f-48f2-8c96-173109ed3e49","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"efb9a150-442a-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"efb9a150-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /peerconnections/3c0d9f24-2a1f-48f2-8c96-173109ed3e49 200 8ms","method":"GET","requestID":"efb9a150-442a-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/peerconnections/3c0d9f24-2a1f-48f2-8c96-173109ed3e49"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 29ms","method":"POST","requestID":"a23571ced099724fa4076825b03207aa","responseTime":29,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:54:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.032","http_referrer":"","http_user_agent":"node-fetch","requestID":"a23571ced099724fa4076825b03207aa"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"efbd71e0-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":174,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:27Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2e978348-2036-4d16-9dd5-c3d20c774409","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6580599c-33e4-4423-b026-221468ca4c7f","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213667.3303666} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":174,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.08388,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2e978348-2036-4d16-9dd5-c3d20c774409","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"efbd71e0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2e978348-2036-4d16-9dd5-c3d20c774409","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"efbd71e0-442a-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"efbd71e0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/2e978348-2036-4d16-9dd5-c3d20c774409/signaling 200 8ms","method":"POST","requestID":"efbd71e0-442a-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/devices/2e978348-2036-4d16-9dd5-c3d20c774409/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"efbef880-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":175,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:27Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54c88ee8-3acd-4f92-96dd-eb5336627160","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fb3706ec-f0b3-4786-8e04-078212ff4ff4","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213667.3404043} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":175,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.15689,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/54c88ee8-3acd-4f92-96dd-eb5336627160","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"efbef880-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/54c88ee8-3acd-4f92-96dd-eb5336627160","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"efbef880-442a-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"efbef880-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/54c88ee8-3acd-4f92-96dd-eb5336627160/signaling 200 8ms","method":"POST","requestID":"efbef880-442a-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/devices/54c88ee8-3acd-4f92-96dd-eb5336627160/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2N30.v_sFeS3LtHFzhlv72qJccaMj0Jjy5S4fAy8VEz9vBTk","level":"info","message":"auth send jwt","requestID":"7289554eff290a7b101acaf7c52e17a3"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"7289554eff290a7b101acaf7c52e17a3","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/46a0c49c-4910-4432-89e2-51f56a093715","requestID":"7289554eff290a7b101acaf7c52e17a3"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":176,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:27Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":176,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.714698,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/46a0c49c-4910-4432-89e2-51f56a093715","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"7289554eff290a7b101acaf7c52e17a3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:http://localhost/experiments/46a0c49c-4910-4432-89e2-51f56a093715","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213667,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2N30.v_sFeS3LtHFzhlv72qJccaMj0Jjy5S4fAy8VEz9vBTk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7289554eff290a7b101acaf7c52e17a3","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/46a0c49c-4910-4432-89e2-51f56a093715","requestID":"7289554eff290a7b101acaf7c52e17a3"} gateway-1 | {"time_local":"17/Jul/2024:10:54:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/46a0c49c-4910-4432-89e2-51f56a093715 HTTP/1.1","status": "200","body_bytes_sent":"880","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7289554eff290a7b101acaf7c52e17a3"} experiment-1 | {"level":"info","message":"GET /experiments/46a0c49c-4910-4432-89e2-51f56a093715 200 10ms","method":"GET","requestID":"7289554eff290a7b101acaf7c52e17a3","responseTime":10,"status":200,"url":"/experiments/46a0c49c-4910-4432-89e2-51f56a093715"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2N30.v_sFeS3LtHFzhlv72qJccaMj0Jjy5S4fAy8VEz9vBTk","level":"info","message":"auth send jwt","requestID":"d9ba7655c9a6363dcecda8070f019109"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d9ba7655c9a6363dcecda8070f019109","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/46a0c49c-4910-4432-89e2-51f56a093715","requestID":"d9ba7655c9a6363dcecda8070f019109"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":177,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:27Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":177,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.689737,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:27Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/46a0c49c-4910-4432-89e2-51f56a093715","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"d9ba7655c9a6363dcecda8070f019109","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:http://localhost/experiments/46a0c49c-4910-4432-89e2-51f56a093715","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213667,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2N30.v_sFeS3LtHFzhlv72qJccaMj0Jjy5S4fAy8VEz9vBTk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d9ba7655c9a6363dcecda8070f019109","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/46a0c49c-4910-4432-89e2-51f56a093715"},"level":"info","message":"Attempting to finish experiment","requestID":"d9ba7655c9a6363dcecda8070f019109"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"efc5af40-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":178,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:27Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":178,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.257513,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:27Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/3c0d9f24-2a1f-48f2-8c96-173109ed3e49","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"efc5af40-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"peerconnection:http://localhost/peerconnections/3c0d9f24-2a1f-48f2-8c96-173109ed3e49","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213667,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2N30.v_sFeS3LtHFzhlv72qJccaMj0Jjy5S4fAy8VEz9vBTk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"efc5af40-442a-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/3c0d9f24-2a1f-48f2-8c96-173109ed3e49","device":"2e978348-2036-4d16-9dd5-c3d20c774409","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/3c0d9f24-2a1f-48f2-8c96-173109ed3e49","device":"54c88ee8-3acd-4f92-96dd-eb5336627160","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/3c0d9f24-2a1f-48f2-8c96-173109ed3e49' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/3c0d9f24-2a1f-48f2-8c96-173109ed3e49' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"3c0d9f24-2a1f-48f2-8c96-173109ed3e49","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0d132191775ea159a4571d69c3c14bf2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 0ms","method":"GET","requestID":"0d132191775ea159a4571d69c3c14bf2","responseTime":0,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"da8f1469261594fb30331ae2ae94213c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"da8f1469261594fb30331ae2ae94213c","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/2e978348-2036-4d16-9dd5-c3d20c774409"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/54c88ee8-3acd-4f92-96dd-eb5336627160"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/3c0d9f24-2a1f-48f2-8c96-173109ed3e49"}}},"level":"info","message":"received a callback","requestID":"0d132191775ea159a4571d69c3c14bf2"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F3c0d9f24-2a1f-48f2-8c96-173109ed3e49': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F3c0d9f24-2a1f-48f2-8c96-173109ed3e49","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]},"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":null},"raw_response":{},"request_id":"17ed7705-82df-430d-8a61-351145fb2765","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213667.3985598} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9fc06a93-253c-4b30-9052-f83468e5feb3","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213667.3992264} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/2e978348-2036-4d16-9dd5-c3d20c774409"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/54c88ee8-3acd-4f92-96dd-eb5336627160"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/3c0d9f24-2a1f-48f2-8c96-173109ed3e49"}}},"level":"info","message":"received a callback","requestID":"da8f1469261594fb30331ae2ae94213c"} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"efc5af40-442a-11ef-8685-a1e9f27e6f28","responseTime":10,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"3c0d9f24-2a1f-48f2-8c96-173109ed3e49","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"efc5af40-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"DELETE /peerconnections/3c0d9f24-2a1f-48f2-8c96-173109ed3e49 204 34ms","method":"DELETE","requestID":"efc5af40-442a-11ef-8685-a1e9f27e6f28","responseTime":34,"status":204,"url":"/peerconnections/3c0d9f24-2a1f-48f2-8c96-173109ed3e49"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/46a0c49c-4910-4432-89e2-51f56a093715"},"level":"info","message":"Successfully finished experiment","requestID":"d9ba7655c9a6363dcecda8070f019109"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"efcd7770-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":179,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:27Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2e978348-2036-4d16-9dd5-c3d20c774409","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0128f1ca-424a-4f92-a855-32bdb21fc721","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213667.4358695} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":179,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.150211,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2e978348-2036-4d16-9dd5-c3d20c774409","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"efcd7770-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2e978348-2036-4d16-9dd5-c3d20c774409","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"efcd7770-442a-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"efcd7770-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/2e978348-2036-4d16-9dd5-c3d20c774409/signaling 200 9ms","method":"POST","requestID":"efcd7770-442a-11ef-8685-a1e9f27e6f28","responseTime":9,"status":200,"url":"/devices/2e978348-2036-4d16-9dd5-c3d20c774409/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"efcf2520-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F46a0c49c-4910-4432-89e2-51f56a093715': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F46a0c49c-4910-4432-89e2-51f56a093715","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]},"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":null},"raw_response":{},"request_id":"dd035114-21e8-4bd2-8b3e-1daf6b8b75ad","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213667.443931} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"53765d52-ea24-48b7-937f-716039faef30","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213667.4442644} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"d9ba7655c9a6363dcecda8070f019109","responseTime":16,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":180,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:27Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54c88ee8-3acd-4f92-96dd-eb5336627160","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"05ac6dde-4e39-40ae-ba50-01c39be805af","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213667.446653} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":180,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.441092,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/54c88ee8-3acd-4f92-96dd-eb5336627160","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"efcf2520-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/54c88ee8-3acd-4f92-96dd-eb5336627160","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"efcf2520-442a-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"efcf2520-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/54c88ee8-3acd-4f92-96dd-eb5336627160/signaling 200 10ms","method":"POST","requestID":"efcf2520-442a-11ef-8685-a1e9f27e6f28","responseTime":10,"status":200,"url":"/devices/54c88ee8-3acd-4f92-96dd-eb5336627160/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/46a0c49c-4910-4432-89e2-51f56a093715","requestID":"d9ba7655c9a6363dcecda8070f019109"} gateway-1 | {"time_local":"17/Jul/2024:10:54:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/46a0c49c-4910-4432-89e2-51f56a093715 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.139","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d9ba7655c9a6363dcecda8070f019109"} experiment-1 | {"level":"info","message":"DELETE /experiments/46a0c49c-4910-4432-89e2-51f56a093715 204 135ms","method":"DELETE","requestID":"d9ba7655c9a6363dcecda8070f019109","responseTime":135,"status":204,"url":"/experiments/46a0c49c-4910-4432-89e2-51f56a093715"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 109ms","method":"POST","requestID":"0d132191775ea159a4571d69c3c14bf2","responseTime":109,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:54:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.113","http_referrer":"","http_user_agent":"node-fetch","requestID":"0d132191775ea159a4571d69c3c14bf2"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 110ms","method":"POST","requestID":"da8f1469261594fb30331ae2ae94213c","responseTime":110,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:54:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.114","http_referrer":"","http_user_agent":"node-fetch","requestID":"da8f1469261594fb30331ae2ae94213c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2N30.v_sFeS3LtHFzhlv72qJccaMj0Jjy5S4fAy8VEz9vBTk","level":"info","message":"auth send jwt","requestID":"1bd87b0f798408e23e803161ca68a4bd"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1bd87b0f798408e23e803161ca68a4bd","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"1bd87b0f798408e23e803161ca68a4bd"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":181,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:27Z"} gateway-1 | {"time_local":"17/Jul/2024:10:54:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2647","request_time":"0.619","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"f3dc545e757e302b5c24d65b5c7c1e70"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":181,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.919862,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:27Z"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/54c88ee8-3acd-4f92-96dd-eb5336627160' closed"} gateway-1 | {"time_local":"17/Jul/2024:10:54:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2646","request_time":"0.633","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"c1aad8594df73e6e795a7aeca11e1391"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1bd87b0f798408e23e803161ca68a4bd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213667,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2N30.v_sFeS3LtHFzhlv72qJccaMj0Jjy5S4fAy8VEz9vBTk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1bd87b0f798408e23e803161ca68a4bd","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/2e978348-2036-4d16-9dd5-c3d20c774409' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F109347f3-d9e0-4e43-9d77-fc27a624d9c7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"bc1e97c9-4297-4a97-8fba-a574b2a9d8d2","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213667.536134} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1bd87b0f798408e23e803161ca68a4bd","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a615555b-3bb9-4f41-84fb-4fa81d7f8607","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213667.5412145} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"1bd87b0f798408e23e803161ca68a4bd","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F109347f3-d9e0-4e43-9d77-fc27a624d9c7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"3e5d8370-3d1a-4079-a7f6-fafe4b117ea2","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213667.5512311} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"717d2e11-04b7-482d-b340-e96e38dfc3c4","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213667.5514107} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"1bd87b0f798408e23e803161ca68a4bd","responseTime":12,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F109347f3-d9e0-4e43-9d77-fc27a624d9c7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F109347f3-d9e0-4e43-9d77-fc27a624d9c7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:27.551216044Z"}]},"request_id":"6c1ea75e-69d1-4fa6-a69a-e0a5a54c950e","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213667.555383} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"1bd87b0f798408e23e803161ca68a4bd","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"1bd87b0f798408e23e803161ca68a4bd"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"1bd87b0f798408e23e803161ca68a4bd","responseTime":46,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"17/Jul/2024:10:54:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1bd87b0f798408e23e803161ca68a4bd"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2N30.v_sFeS3LtHFzhlv72qJccaMj0Jjy5S4fAy8VEz9vBTk","level":"info","message":"auth send jwt","requestID":"4aa7361a49bd91c63baf9749910ac675"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4aa7361a49bd91c63baf9749910ac675","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"4aa7361a49bd91c63baf9749910ac675"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":182,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:27Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":182,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.801984,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:27Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"4aa7361a49bd91c63baf9749910ac675","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213667,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2N30.v_sFeS3LtHFzhlv72qJccaMj0Jjy5S4fAy8VEz9vBTk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4aa7361a49bd91c63baf9749910ac675","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca74d541-b1a0-433f-898f-9dc13e764a31","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"53e959cf-ba3b-4de7-b783-1a31a3b9932e","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213667.5799232} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"4aa7361a49bd91c63baf9749910ac675","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"de46c24b-a585-45e6-aeb5-2d5b9eafce5f","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213667.584974} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"4aa7361a49bd91c63baf9749910ac675","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca74d541-b1a0-433f-898f-9dc13e764a31","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"a014d1ac-3637-466c-bc3e-f331025855e0","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213667.602779} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2ae817b6-94d9-4f48-868a-b09f87c15eaf","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213667.6030838} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"4aa7361a49bd91c63baf9749910ac675","responseTime":20,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca74d541-b1a0-433f-898f-9dc13e764a31","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca74d541-b1a0-433f-898f-9dc13e764a31","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:27.602763377Z"}]},"request_id":"33adae28-8638-46f4-8ec5-d67b99013a6e","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213667.608279} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4aa7361a49bd91c63baf9749910ac675","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"4aa7361a49bd91c63baf9749910ac675"} device-1 | {"level":"info","message":"POST /devices? 201 48ms","method":"POST","requestID":"4aa7361a49bd91c63baf9749910ac675","responseTime":48,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"17/Jul/2024:10:54:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4aa7361a49bd91c63baf9749910ac675"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2OH0.oXikIZS2ISs780YKNcJjk746pwFSJ8z9klenL4p4BLs","level":"info","message":"auth send jwt","requestID":"cbc441ec858ca4161a45048e5f936188"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"cbc441ec858ca4161a45048e5f936188","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"cbc441ec858ca4161a45048e5f936188"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":183,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:28Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":183,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.264047,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:28Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/109347f3-d9e0-4e43-9d77-fc27a624d9c7","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"cbc441ec858ca4161a45048e5f936188","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/109347f3-d9e0-4e43-9d77-fc27a624d9c7","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213668,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2OH0.oXikIZS2ISs780YKNcJjk746pwFSJ8z9klenL4p4BLs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cbc441ec858ca4161a45048e5f936188","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F109347f3-d9e0-4e43-9d77-fc27a624d9c7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F109347f3-d9e0-4e43-9d77-fc27a624d9c7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:27.551216044Z"}]},"request_id":"49d63616-de8a-49c3-a9ea-9fe5f66729d1","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213668.1123195} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"cbc441ec858ca4161a45048e5f936188","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d4ab9945-da67-4237-a5e5-00833789cfe9","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213668.1198988} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"cbc441ec858ca4161a45048e5f936188","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F109347f3-d9e0-4e43-9d77-fc27a624d9c7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F109347f3-d9e0-4e43-9d77-fc27a624d9c7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:27.551216044Z"}]},"request_id":"1944d3ee-c7c6-4dcb-8c18-826dd014cea2","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213668.132453} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"cbc441ec858ca4161a45048e5f936188","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"cbc441ec858ca4161a45048e5f936188"} gateway-1 | {"time_local":"17/Jul/2024:10:54:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/109347f3-d9e0-4e43-9d77-fc27a624d9c7 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.045","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"cbc441ec858ca4161a45048e5f936188"} device-1 | {"level":"info","message":"PATCH /devices/109347f3-d9e0-4e43-9d77-fc27a624d9c7 200 39ms","method":"PATCH","requestID":"cbc441ec858ca4161a45048e5f936188","responseTime":39,"status":200,"url":"/devices/109347f3-d9e0-4e43-9d77-fc27a624d9c7"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2OH0.oXikIZS2ISs780YKNcJjk746pwFSJ8z9klenL4p4BLs","level":"info","message":"auth send jwt","requestID":"a521d8fb43b3ac9314b9b80ee668b821"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a521d8fb43b3ac9314b9b80ee668b821","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"a521d8fb43b3ac9314b9b80ee668b821"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":184,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:28Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":184,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.438978,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:28Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/109347f3-d9e0-4e43-9d77-fc27a624d9c7","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"a521d8fb43b3ac9314b9b80ee668b821","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/109347f3-d9e0-4e43-9d77-fc27a624d9c7","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213668,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2OH0.oXikIZS2ISs780YKNcJjk746pwFSJ8z9klenL4p4BLs"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"a521d8fb43b3ac9314b9b80ee668b821","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"a521d8fb43b3ac9314b9b80ee668b821"} gateway-1 | {"time_local":"17/Jul/2024:10:54:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/109347f3-d9e0-4e43-9d77-fc27a624d9c7/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.026","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"a521d8fb43b3ac9314b9b80ee668b821"} device-1 | {"level":"info","message":"POST /devices/109347f3-d9e0-4e43-9d77-fc27a624d9c7/websocket 200 20ms","method":"POST","requestID":"a521d8fb43b3ac9314b9b80ee668b821","responseTime":20,"status":200,"url":"/devices/109347f3-d9e0-4e43-9d77-fc27a624d9c7/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/109347f3-d9e0-4e43-9d77-fc27a624d9c7' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"70a0ec1a8fbfaed3330ded70a53919f4","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"70a0ec1a8fbfaed3330ded70a53919f4","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"17/Jul/2024:10:54:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/ca74d541-b1a0-433f-898f-9dc13e764a31/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.002","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"70a0ec1a8fbfaed3330ded70a53919f4"} device-1 | {"level":"info","message":"OPTIONS /devices/ca74d541-b1a0-433f-898f-9dc13e764a31/websocket 200 1ms","method":"OPTIONS","requestID":"70a0ec1a8fbfaed3330ded70a53919f4","responseTime":1,"status":200,"url":"/devices/ca74d541-b1a0-433f-898f-9dc13e764a31/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2OX0.GLssOctRm7I14vacPnzOGRmy8lygTifzfsa-NffQGb0","level":"info","message":"auth send jwt","requestID":"f381c7509c80c92521d278fedf66c2e0"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"f381c7509c80c92521d278fedf66c2e0","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"f381c7509c80c92521d278fedf66c2e0"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":185,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:29Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":185,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.229963,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:29Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ca74d541-b1a0-433f-898f-9dc13e764a31","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f381c7509c80c92521d278fedf66c2e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/ca74d541-b1a0-433f-898f-9dc13e764a31","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213669,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2OX0.GLssOctRm7I14vacPnzOGRmy8lygTifzfsa-NffQGb0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f381c7509c80c92521d278fedf66c2e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"f381c7509c80c92521d278fedf66c2e0"} gateway-1 | {"time_local":"17/Jul/2024:10:54:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/ca74d541-b1a0-433f-898f-9dc13e764a31/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.024","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"f381c7509c80c92521d278fedf66c2e0"} device-1 | {"level":"info","message":"POST /devices/ca74d541-b1a0-433f-898f-9dc13e764a31/websocket 200 20ms","method":"POST","requestID":"f381c7509c80c92521d278fedf66c2e0","responseTime":20,"status":200,"url":"/devices/ca74d541-b1a0-433f-898f-9dc13e764a31/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/ca74d541-b1a0-433f-898f-9dc13e764a31' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2OX0.GLssOctRm7I14vacPnzOGRmy8lygTifzfsa-NffQGb0","level":"info","message":"auth send jwt","requestID":"7d68cdef3408f43c3b6466ae08ce8457"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"7d68cdef3408f43c3b6466ae08ce8457","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7d68cdef3408f43c3b6466ae08ce8457"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":186,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:29Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":186,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.268078,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/109347f3-d9e0-4e43-9d77-fc27a624d9c7","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"7d68cdef3408f43c3b6466ae08ce8457","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/109347f3-d9e0-4e43-9d77-fc27a624d9c7","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213669,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2OX0.GLssOctRm7I14vacPnzOGRmy8lygTifzfsa-NffQGb0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7d68cdef3408f43c3b6466ae08ce8457","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F109347f3-d9e0-4e43-9d77-fc27a624d9c7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F109347f3-d9e0-4e43-9d77-fc27a624d9c7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:27.551216044Z"}]},"request_id":"40964ea4-009a-4161-b9ea-4fb64688b866","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213669.6685336} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"7d68cdef3408f43c3b6466ae08ce8457","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7d68cdef3408f43c3b6466ae08ce8457"} gateway-1 | {"time_local":"17/Jul/2024:10:54:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/109347f3-d9e0-4e43-9d77-fc27a624d9c7? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7d68cdef3408f43c3b6466ae08ce8457"} device-1 | {"level":"info","message":"GET /devices/109347f3-d9e0-4e43-9d77-fc27a624d9c7? 200 18ms","method":"GET","requestID":"7d68cdef3408f43c3b6466ae08ce8457","responseTime":18,"status":200,"url":"/devices/109347f3-d9e0-4e43-9d77-fc27a624d9c7?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2OX0.GLssOctRm7I14vacPnzOGRmy8lygTifzfsa-NffQGb0","level":"info","message":"auth send jwt","requestID":"ae4dbc7a2691820d3e98ab5f8d083010"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ae4dbc7a2691820d3e98ab5f8d083010","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ae4dbc7a2691820d3e98ab5f8d083010"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":187,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:29Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":187,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.674904,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ca74d541-b1a0-433f-898f-9dc13e764a31","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"ae4dbc7a2691820d3e98ab5f8d083010","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/ca74d541-b1a0-433f-898f-9dc13e764a31","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213669,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2OX0.GLssOctRm7I14vacPnzOGRmy8lygTifzfsa-NffQGb0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ae4dbc7a2691820d3e98ab5f8d083010","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca74d541-b1a0-433f-898f-9dc13e764a31","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca74d541-b1a0-433f-898f-9dc13e764a31","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:27.602763377Z"}]},"request_id":"b476c7d6-0957-4ec4-968a-f09074f272c0","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213669.694202} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ae4dbc7a2691820d3e98ab5f8d083010","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ae4dbc7a2691820d3e98ab5f8d083010"} gateway-1 | {"time_local":"17/Jul/2024:10:54:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ca74d541-b1a0-433f-898f-9dc13e764a31? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ae4dbc7a2691820d3e98ab5f8d083010"} device-1 | {"level":"info","message":"GET /devices/ca74d541-b1a0-433f-898f-9dc13e764a31? 200 19ms","method":"GET","requestID":"ae4dbc7a2691820d3e98ab5f8d083010","responseTime":19,"status":200,"url":"/devices/ca74d541-b1a0-433f-898f-9dc13e764a31?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2OX0.GLssOctRm7I14vacPnzOGRmy8lygTifzfsa-NffQGb0","level":"info","message":"auth send jwt","requestID":"80a191f5cfdc795211737d77ceac416d"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"80a191f5cfdc795211737d77ceac416d","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"80a191f5cfdc795211737d77ceac416d"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":188,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:29Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":188,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.288297,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:29Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"80a191f5cfdc795211737d77ceac416d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213669,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2OX0.GLssOctRm7I14vacPnzOGRmy8lygTifzfsa-NffQGb0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"80a191f5cfdc795211737d77ceac416d","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c547aa19-556c-4a7f-9c67-0e56f4218213"},"level":"info","message":"Attempting to run experiment","requestID":"80a191f5cfdc795211737d77ceac416d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c547aa19-556c-4a7f-9c67-0e56f4218213"},"level":"info","message":"Attempting to book experiment","requestID":"80a191f5cfdc795211737d77ceac416d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c547aa19-556c-4a7f-9c67-0e56f4218213"},"level":"info","message":"Successfully booked experiment","requestID":"80a191f5cfdc795211737d77ceac416d"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f12f9f80-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f12feda0-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":189,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:29Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":189,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.08467,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/109347f3-d9e0-4e43-9d77-fc27a624d9c7","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f12f9f80-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/109347f3-d9e0-4e43-9d77-fc27a624d9c7","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213669,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2OX0.GLssOctRm7I14vacPnzOGRmy8lygTifzfsa-NffQGb0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f12f9f80-442a-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60544","level":"info","msg":"Received request.","req_id":190,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:29Z"} authorization-1 | {"client_addr":"127.0.0.1:60544","level":"info","msg":"Sent response.","req_id":190,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.737817,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ca74d541-b1a0-433f-898f-9dc13e764a31","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f12feda0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/ca74d541-b1a0-433f-898f-9dc13e764a31","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213669,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2OX0.GLssOctRm7I14vacPnzOGRmy8lygTifzfsa-NffQGb0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f12feda0-442a-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F109347f3-d9e0-4e43-9d77-fc27a624d9c7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F109347f3-d9e0-4e43-9d77-fc27a624d9c7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:27.551216044Z"}]},"request_id":"ad940237-05dc-4e2b-a24f-36f22265f4f4","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213669.7640307} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"f12f9f80-442a-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca74d541-b1a0-433f-898f-9dc13e764a31","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca74d541-b1a0-433f-898f-9dc13e764a31","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:27.602763377Z"}]},"request_id":"e1c3ed45-4eec-4afc-9cfa-23b5c6b06488","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213669.7659683} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"f12feda0-442a-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f12f9f80-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/109347f3-d9e0-4e43-9d77-fc27a624d9c7? 200 23ms","method":"GET","requestID":"f12f9f80-442a-11ef-8685-a1e9f27e6f28","responseTime":23,"status":200,"url":"/devices/109347f3-d9e0-4e43-9d77-fc27a624d9c7?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f12feda0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/ca74d541-b1a0-433f-898f-9dc13e764a31? 200 23ms","method":"GET","requestID":"f12feda0-442a-11ef-8685-a1e9f27e6f28","responseTime":23,"status":200,"url":"/devices/ca74d541-b1a0-433f-898f-9dc13e764a31?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c547aa19-556c-4a7f-9c67-0e56f4218213"},"level":"info","message":"Setting up experiment","requestID":"80a191f5cfdc795211737d77ceac416d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c547aa19-556c-4a7f-9c67-0e56f4218213"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"80a191f5cfdc795211737d77ceac416d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c547aa19-556c-4a7f-9c67-0e56f4218213"},"level":"info","message":"Successfully locked booking for experiment","requestID":"80a191f5cfdc795211737d77ceac416d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c547aa19-556c-4a7f-9c67-0e56f4218213"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"80a191f5cfdc795211737d77ceac416d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c547aa19-556c-4a7f-9c67-0e56f4218213"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"80a191f5cfdc795211737d77ceac416d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c547aa19-556c-4a7f-9c67-0e56f4218213"},"level":"info","message":"Attempting to update booking for experiment","requestID":"80a191f5cfdc795211737d77ceac416d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c547aa19-556c-4a7f-9c67-0e56f4218213"},"level":"info","message":"Successfully updated booking for experiment","requestID":"80a191f5cfdc795211737d77ceac416d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c547aa19-556c-4a7f-9c67-0e56f4218213"},"level":"info","message":"Successfully set up experiment","requestID":"80a191f5cfdc795211737d77ceac416d"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f13ce5f0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f13d8230-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":191,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:29Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c547aa19-556c-4a7f-9c67-0e56f4218213"},"level":"info","message":"Successfully running experiment","requestID":"80a191f5cfdc795211737d77ceac416d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f13df760-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":191,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.701283,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/109347f3-d9e0-4e43-9d77-fc27a624d9c7","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f13ce5f0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/109347f3-d9e0-4e43-9d77-fc27a624d9c7","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213669,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2OX0.GLssOctRm7I14vacPnzOGRmy8lygTifzfsa-NffQGb0"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"f13ce5f0-442a-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60544","level":"info","msg":"Received request.","req_id":192,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:29Z"} authorization-1 | {"client_addr":"127.0.0.1:60544","level":"info","msg":"Sent response.","req_id":192,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.15334,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ca74d541-b1a0-433f-898f-9dc13e764a31","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f13d8230-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/ca74d541-b1a0-433f-898f-9dc13e764a31","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213669,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2OX0.GLssOctRm7I14vacPnzOGRmy8lygTifzfsa-NffQGb0"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"f13d8230-442a-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":193,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:29Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F109347f3-d9e0-4e43-9d77-fc27a624d9c7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F109347f3-d9e0-4e43-9d77-fc27a624d9c7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:27.551216044Z"}]},"request_id":"38755f86-8f95-42d5-936e-998b56f2d6c4","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213669.8581157} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F109347f3-d9e0-4e43-9d77-fc27a624d9c7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"844da5b4-a4dc-43a6-a1f4-02dbcd2d1d13","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213669.8586578} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"f13ce5f0-442a-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":193,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.020022,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:29Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca74d541-b1a0-433f-898f-9dc13e764a31","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca74d541-b1a0-433f-898f-9dc13e764a31","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:27.602763377Z"}]},"request_id":"ea9ce815-c5df-443f-95e7-d250ccef015c","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213669.8594506} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/109347f3-d9e0-4e43-9d77-fc27a624d9c7","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f13df760-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/109347f3-d9e0-4e43-9d77-fc27a624d9c7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"f13df760-442a-11ef-8685-a1e9f27e6f28","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"f13d8230-442a-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f13ce5f0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/109347f3-d9e0-4e43-9d77-fc27a624d9c7? 200 31ms","method":"GET","requestID":"f13ce5f0-442a-11ef-8685-a1e9f27e6f28","responseTime":31,"status":200,"url":"/devices/109347f3-d9e0-4e43-9d77-fc27a624d9c7?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f13df760-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/109347f3-d9e0-4e43-9d77-fc27a624d9c7/signaling 200 28ms","method":"POST","requestID":"f13df760-442a-11ef-8685-a1e9f27e6f28","responseTime":28,"status":200,"url":"/devices/109347f3-d9e0-4e43-9d77-fc27a624d9c7/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f13d8230-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/ca74d541-b1a0-433f-898f-9dc13e764a31? 200 32ms","method":"GET","requestID":"f13d8230-442a-11ef-8685-a1e9f27e6f28","responseTime":32,"status":200,"url":"/devices/ca74d541-b1a0-433f-898f-9dc13e764a31?"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc547aa19-556c-4a7f-9c67-0e56f4218213#owner@http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc547aa19-556c-4a7f-9c67-0e56f4218213","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"bdb324ef-6f5d-4bc3-9d9b-35be6b1c1ae6","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213669.8754947} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c9b8d3bb-2f07-4fc9-b27f-a12d22f557b1","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213669.8756897} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f142b250-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"level":"info","message":"POST /relations/update 200 28ms","method":"POST","requestID":"80a191f5cfdc795211737d77ceac416d","responseTime":28,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f1432780-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":194,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:29Z"} authorization-1 | {"client_addr":"127.0.0.1:60544","level":"info","msg":"Received request.","req_id":195,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:29Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca74d541-b1a0-433f-898f-9dc13e764a31","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"261163b8-2527-4f01-84b1-1922629db1f7","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213669.8844132} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":194,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.347178,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ca74d541-b1a0-433f-898f-9dc13e764a31","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f142b250-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ca74d541-b1a0-433f-898f-9dc13e764a31","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"f142b250-442a-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F109347f3-d9e0-4e43-9d77-fc27a624d9c7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3be70b46-f7dc-4d35-a646-13f6a69e0709","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213669.8860974} authorization-1 | {"client_addr":"127.0.0.1:60544","level":"info","msg":"Sent response.","req_id":195,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.655738,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/109347f3-d9e0-4e43-9d77-fc27a624d9c7","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f1432780-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/109347f3-d9e0-4e43-9d77-fc27a624d9c7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/c547aa19-556c-4a7f-9c67-0e56f4218213","user":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"80a191f5cfdc795211737d77ceac416d"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f1432780-442a-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"17/Jul/2024:10:54:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"811","request_time":"0.187","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"80a191f5cfdc795211737d77ceac416d"} experiment-1 | {"level":"info","message":"POST /experiments? 201 180ms","method":"POST","requestID":"80a191f5cfdc795211737d77ceac416d","responseTime":180,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f142b250-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/ca74d541-b1a0-433f-898f-9dc13e764a31/signaling 200 15ms","method":"POST","requestID":"f142b250-442a-11ef-8685-a1e9f27e6f28","responseTime":15,"status":200,"url":"/devices/ca74d541-b1a0-433f-898f-9dc13e764a31/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f1432780-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/109347f3-d9e0-4e43-9d77-fc27a624d9c7/signaling 200 13ms","method":"POST","requestID":"f1432780-442a-11ef-8685-a1e9f27e6f28","responseTime":13,"status":200,"url":"/devices/109347f3-d9e0-4e43-9d77-fc27a624d9c7/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2OX0.GLssOctRm7I14vacPnzOGRmy8lygTifzfsa-NffQGb0","level":"info","message":"auth send jwt","requestID":"ed170cf6d3d7987275de09e908665d06"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ed170cf6d3d7987275de09e908665d06","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ed170cf6d3d7987275de09e908665d06"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f145bf90-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":196,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:29Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":196,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.015295,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:29Z"} authorization-1 | {"client_addr":"127.0.0.1:60544","level":"info","msg":"Received request.","req_id":197,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/109347f3-d9e0-4e43-9d77-fc27a624d9c7","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"ed170cf6d3d7987275de09e908665d06","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/109347f3-d9e0-4e43-9d77-fc27a624d9c7","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213669,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2OX0.GLssOctRm7I14vacPnzOGRmy8lygTifzfsa-NffQGb0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ed170cf6d3d7987275de09e908665d06","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca74d541-b1a0-433f-898f-9dc13e764a31","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0096e67c-e4c7-4437-bf02-53de7dad8bd1","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213669.9040675} authorization-1 | {"client_addr":"127.0.0.1:60544","level":"info","msg":"Sent response.","req_id":197,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.447195,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ca74d541-b1a0-433f-898f-9dc13e764a31","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f145bf90-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ca74d541-b1a0-433f-898f-9dc13e764a31","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f145bf90-442a-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F109347f3-d9e0-4e43-9d77-fc27a624d9c7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F109347f3-d9e0-4e43-9d77-fc27a624d9c7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:27.551216044Z"}]},"request_id":"a8cbb5f0-abd0-42be-a445-fb0970b1f370","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213669.9080424} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f145bf90-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/ca74d541-b1a0-433f-898f-9dc13e764a31/signaling 200 11ms","method":"POST","requestID":"f145bf90-442a-11ef-8685-a1e9f27e6f28","responseTime":11,"status":200,"url":"/devices/ca74d541-b1a0-433f-898f-9dc13e764a31/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ed170cf6d3d7987275de09e908665d06","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c547aa19-556c-4a7f-9c67-0e56f4218213"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"80a191f5cfdc795211737d77ceac416d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c547aa19-556c-4a7f-9c67-0e56f4218213"},"level":"info","message":"Building connection plan","requestID":"80a191f5cfdc795211737d77ceac416d"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"a1cdbc75-42da-4fed-9a1f-61f58d18c284"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"55d1bc78-7857-42d1-80dc-cdda7ccdb5c9"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"f1882242-dd09-4e83-9bd2-10409a494bab"}]},"level":"info","message":"Built pairwise service configurations","requestID":"80a191f5cfdc795211737d77ceac416d"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/ca74d541-b1a0-433f-898f-9dc13e764a31"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/109347f3-d9e0-4e43-9d77-fc27a624d9c7"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"80a191f5cfdc795211737d77ceac416d"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"f1480980-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ed170cf6d3d7987275de09e908665d06"} gateway-1 | {"time_local":"17/Jul/2024:10:54:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/109347f3-d9e0-4e43-9d77-fc27a624d9c7? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ed170cf6d3d7987275de09e908665d06"} device-1 | {"level":"info","message":"GET /devices/109347f3-d9e0-4e43-9d77-fc27a624d9c7? 200 19ms","method":"GET","requestID":"ed170cf6d3d7987275de09e908665d06","responseTime":20,"status":200,"url":"/devices/109347f3-d9e0-4e43-9d77-fc27a624d9c7?"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":198,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:29Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":198,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.946464,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:29Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f1480980-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213669,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2OX0.GLssOctRm7I14vacPnzOGRmy8lygTifzfsa-NffQGb0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f1480980-442a-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2OX0.GLssOctRm7I14vacPnzOGRmy8lygTifzfsa-NffQGb0","level":"info","message":"auth send jwt","requestID":"d43eacf857c25871ac815c192175c65e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d43eacf857c25871ac815c192175c65e","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d43eacf857c25871ac815c192175c65e"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":199,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:29Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":199,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.657443,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ca74d541-b1a0-433f-898f-9dc13e764a31","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"d43eacf857c25871ac815c192175c65e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/ca74d541-b1a0-433f-898f-9dc13e764a31","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213669,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY2OX0.GLssOctRm7I14vacPnzOGRmy8lygTifzfsa-NffQGb0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d43eacf857c25871ac815c192175c65e","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca74d541-b1a0-433f-898f-9dc13e764a31","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca74d541-b1a0-433f-898f-9dc13e764a31","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:27.602763377Z"}]},"request_id":"cda600cf-15b1-4cf9-9a34-13de4b09b8a6","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213669.9298418} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d43eacf857c25871ac815c192175c65e","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"6342ca99-265f-4ff7-a5f6-a9fc408d5991","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213669.9313135} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"71cabe3a-2fe9-45e8-9efb-35fd7a726a4b","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213669.9318147} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"f1480980-442a-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d43eacf857c25871ac815c192175c65e"} device-1 | {"level":"info","message":"GET /devices/ca74d541-b1a0-433f-898f-9dc13e764a31? 200 15ms","method":"GET","requestID":"d43eacf857c25871ac815c192175c65e","responseTime":15,"status":200,"url":"/devices/ca74d541-b1a0-433f-898f-9dc13e764a31?"} gateway-1 | {"time_local":"17/Jul/2024:10:54:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ca74d541-b1a0-433f-898f-9dc13e764a31? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d43eacf857c25871ac815c192175c65e"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"f1480980-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"f1480980-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/ca47b90a-22fe-4529-8960-cc18d78e8ead'","requestID":"f1480980-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/ca47b90a-22fe-4529-8960-cc18d78e8ead'","requestID":"f1480980-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"f1480980-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 36ms","method":"POST","requestID":"f1480980-442a-11ef-8685-a1e9f27e6f28","responseTime":36,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"f1480980-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/ca47b90a-22fe-4529-8960-cc18d78e8ead","device":"ca74d541-b1a0-433f-898f-9dc13e764a31","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":false} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c547aa19-556c-4a7f-9c67-0e56f4218213"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"80a191f5cfdc795211737d77ceac416d"} device-1 | {"device":"ca74d541-b1a0-433f-898f-9dc13e764a31","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"ca74d541-b1a0-433f-898f-9dc13e764a31","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f1548ca0-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":200,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:29Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F109347f3-d9e0-4e43-9d77-fc27a624d9c7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d0124a03-26dc-4de3-9722-ce74a8c7da4e","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213669.9986918} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":200,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":1.95387,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/109347f3-d9e0-4e43-9d77-fc27a624d9c7","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f1548ca0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/109347f3-d9e0-4e43-9d77-fc27a624d9c7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f1548ca0-442a-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f1548ca0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/109347f3-d9e0-4e43-9d77-fc27a624d9c7/signaling 200 8ms","method":"POST","requestID":"f1548ca0-442a-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/devices/109347f3-d9e0-4e43-9d77-fc27a624d9c7/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f1563a50-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":201,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:30Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca74d541-b1a0-433f-898f-9dc13e764a31","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1de4d831-b4c5-4ef8-88a7-826375da7358","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213670.009259} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":201,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.08942,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:30Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ca74d541-b1a0-433f-898f-9dc13e764a31","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f1563a50-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ca74d541-b1a0-433f-898f-9dc13e764a31","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f1563a50-442a-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f1563a50-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/ca74d541-b1a0-433f-898f-9dc13e764a31/signaling 200 8ms","method":"POST","requestID":"f1563a50-442a-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/devices/ca74d541-b1a0-433f-898f-9dc13e764a31/signaling"} device-1 | {"device":"109347f3-d9e0-4e43-9d77-fc27a624d9c7","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"ca47b90a-22fe-4529-8960-cc18d78e8ead","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 8243830529845969190 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=msid-semantic: WMS\r\nm=application 9 DTLS/SCTP 5000\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:ersE\r\na=ice-pwd:U8fI1u2FfJyxwMKI3kYtbrdj\r\na=ice-options:trickle\r\na=fingerprint:sha-256 CF:F2:B4:65:43:12:E2:DB:12:28:C5:7E:02:BA:55:73:DB:2D:EC:CF:6D:0D:1B:D0:2A:42:B3:85:87:59:32:3C\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"ca74d541-b1a0-433f-898f-9dc13e764a31","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:1200405928 1 udp 2113937151 cab85bed-13ee-460b-8394-4e12a28f7c33.local 40199 typ host generation 0 ufrag ersE network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"ca74d541-b1a0-433f-898f-9dc13e764a31","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"ca74d541-b1a0-433f-898f-9dc13e764a31","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"content":{"candidate":"candidate:3567721659 1 udp 1677729535 141.24.211.56 40199 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag ersE network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"ca74d541-b1a0-433f-898f-9dc13e764a31","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/ca47b90a-22fe-4529-8960-cc18d78e8ead' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"ca47b90a-22fe-4529-8960-cc18d78e8ead","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"ca74d541-b1a0-433f-898f-9dc13e764a31","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a709cc33de874ca15ba7b42b505da255","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"a709cc33de874ca15ba7b42b505da255","responseTime":1,"status":200,"url":"/auth"} device-1 | {"device":"109347f3-d9e0-4e43-9d77-fc27a624d9c7","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"109347f3-d9e0-4e43-9d77-fc27a624d9c7","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"109347f3-d9e0-4e43-9d77-fc27a624d9c7","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/ca74d541-b1a0-433f-898f-9dc13e764a31'"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/ca74d541-b1a0-433f-898f-9dc13e764a31"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/109347f3-d9e0-4e43-9d77-fc27a624d9c7"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/ca47b90a-22fe-4529-8960-cc18d78e8ead"}}},"level":"info","message":"received a callback","requestID":"a709cc33de874ca15ba7b42b505da255"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"a709cc33de874ca15ba7b42b505da255","responseTime":7,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:54:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.010","http_referrer":"","http_user_agent":"node-fetch","requestID":"a709cc33de874ca15ba7b42b505da255"} device-1 | {"device":"109347f3-d9e0-4e43-9d77-fc27a624d9c7","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"109347f3-d9e0-4e43-9d77-fc27a624d9c7","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"ca74d541-b1a0-433f-898f-9dc13e764a31","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"ca74d541-b1a0-433f-898f-9dc13e764a31","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"ca47b90a-22fe-4529-8960-cc18d78e8ead","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"ca47b90a-22fe-4529-8960-cc18d78e8ead","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/ca47b90a-22fe-4529-8960-cc18d78e8ead' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"ca47b90a-22fe-4529-8960-cc18d78e8ead","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"23eea64194c0a425d735959b5c5540c5","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"23eea64194c0a425d735959b5c5540c5","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/ca74d541-b1a0-433f-898f-9dc13e764a31"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/109347f3-d9e0-4e43-9d77-fc27a624d9c7"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/ca47b90a-22fe-4529-8960-cc18d78e8ead"}}},"level":"info","message":"received a callback","requestID":"23eea64194c0a425d735959b5c5540c5"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"f2c4e580-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":202,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:32Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fca47b90a-22fe-4529-8960-cc18d78e8ead","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2ad80cbf-73de-43d4-8e3a-06c483feda02","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213672.4175396} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":202,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":6.012031,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/ca47b90a-22fe-4529-8960-cc18d78e8ead","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f2c4e580-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/ca47b90a-22fe-4529-8960-cc18d78e8ead","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"f2c4e580-442a-11ef-8685-a1e9f27e6f28","responseTime":11,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"f2c4e580-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /peerconnections/ca47b90a-22fe-4529-8960-cc18d78e8ead 200 86ms","method":"GET","requestID":"f2c4e580-442a-11ef-8685-a1e9f27e6f28","responseTime":86,"status":200,"url":"/peerconnections/ca47b90a-22fe-4529-8960-cc18d78e8ead"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 160ms","method":"POST","requestID":"23eea64194c0a425d735959b5c5540c5","responseTime":160,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:54:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.165","http_referrer":"","http_user_agent":"node-fetch","requestID":"23eea64194c0a425d735959b5c5540c5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f2dc3e10-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":203,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:32Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca74d541-b1a0-433f-898f-9dc13e764a31","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"da209b0f-a005-4595-a4fd-15d967604c1b","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213672.5684423} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":203,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.596971,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ca74d541-b1a0-433f-898f-9dc13e764a31","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f2dc3e10-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ca74d541-b1a0-433f-898f-9dc13e764a31","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"f2dc3e10-442a-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f2dc3e10-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/ca74d541-b1a0-433f-898f-9dc13e764a31/signaling 200 14ms","method":"POST","requestID":"f2dc3e10-442a-11ef-8685-a1e9f27e6f28","responseTime":14,"status":200,"url":"/devices/ca74d541-b1a0-433f-898f-9dc13e764a31/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f2defd30-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":204,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:32Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F109347f3-d9e0-4e43-9d77-fc27a624d9c7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"03e94430-5730-47ac-8223-fe2e69afb7d1","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213672.5871744} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":204,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.843046,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/109347f3-d9e0-4e43-9d77-fc27a624d9c7","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f2defd30-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/109347f3-d9e0-4e43-9d77-fc27a624d9c7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"f2defd30-442a-11ef-8685-a1e9f27e6f28","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f2defd30-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/109347f3-d9e0-4e43-9d77-fc27a624d9c7/signaling 200 16ms","method":"POST","requestID":"f2defd30-442a-11ef-8685-a1e9f27e6f28","responseTime":16,"status":200,"url":"/devices/109347f3-d9e0-4e43-9d77-fc27a624d9c7/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY3Mn0.Gw8ZoZO8-SRSy4iUJHyObpK3As7GJqmiQj1uJLfoal4","level":"info","message":"auth send jwt","requestID":"4a83cb19a8362d2b582e6fd5e9976f26"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4a83cb19a8362d2b582e6fd5e9976f26","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/c547aa19-556c-4a7f-9c67-0e56f4218213","requestID":"4a83cb19a8362d2b582e6fd5e9976f26"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":205,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:32Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":205,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.330498,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/c547aa19-556c-4a7f-9c67-0e56f4218213","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"4a83cb19a8362d2b582e6fd5e9976f26","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:http://localhost/experiments/c547aa19-556c-4a7f-9c67-0e56f4218213","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213672,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY3Mn0.Gw8ZoZO8-SRSy4iUJHyObpK3As7GJqmiQj1uJLfoal4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4a83cb19a8362d2b582e6fd5e9976f26","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/c547aa19-556c-4a7f-9c67-0e56f4218213","requestID":"4a83cb19a8362d2b582e6fd5e9976f26"} gateway-1 | {"time_local":"17/Jul/2024:10:54:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/c547aa19-556c-4a7f-9c67-0e56f4218213 HTTP/1.1","status": "200","body_bytes_sent":"884","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4a83cb19a8362d2b582e6fd5e9976f26"} experiment-1 | {"level":"info","message":"GET /experiments/c547aa19-556c-4a7f-9c67-0e56f4218213 200 19ms","method":"GET","requestID":"4a83cb19a8362d2b582e6fd5e9976f26","responseTime":19,"status":200,"url":"/experiments/c547aa19-556c-4a7f-9c67-0e56f4218213"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY3Mn0.Gw8ZoZO8-SRSy4iUJHyObpK3As7GJqmiQj1uJLfoal4","level":"info","message":"auth send jwt","requestID":"e735fe8ac2efe3b066c51be673a9f982"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"e735fe8ac2efe3b066c51be673a9f982","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/c547aa19-556c-4a7f-9c67-0e56f4218213","requestID":"e735fe8ac2efe3b066c51be673a9f982"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":206,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:32Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":206,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.348574,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:32Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/c547aa19-556c-4a7f-9c67-0e56f4218213","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"e735fe8ac2efe3b066c51be673a9f982","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:http://localhost/experiments/c547aa19-556c-4a7f-9c67-0e56f4218213","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213672,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY3Mn0.Gw8ZoZO8-SRSy4iUJHyObpK3As7GJqmiQj1uJLfoal4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e735fe8ac2efe3b066c51be673a9f982","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c547aa19-556c-4a7f-9c67-0e56f4218213"},"level":"info","message":"Attempting to finish experiment","requestID":"e735fe8ac2efe3b066c51be673a9f982"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"f2f98a10-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":207,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:32Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":207,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.476772,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:32Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/ca47b90a-22fe-4529-8960-cc18d78e8ead","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f2f98a10-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"peerconnection:http://localhost/peerconnections/ca47b90a-22fe-4529-8960-cc18d78e8ead","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213672,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY3Mn0.Gw8ZoZO8-SRSy4iUJHyObpK3As7GJqmiQj1uJLfoal4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f2f98a10-442a-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/ca47b90a-22fe-4529-8960-cc18d78e8ead","device":"ca74d541-b1a0-433f-898f-9dc13e764a31","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"109347f3-d9e0-4e43-9d77-fc27a624d9c7","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"109347f3-d9e0-4e43-9d77-fc27a624d9c7","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"109347f3-d9e0-4e43-9d77-fc27a624d9c7","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/ca47b90a-22fe-4529-8960-cc18d78e8ead' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/ca47b90a-22fe-4529-8960-cc18d78e8ead' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"ca47b90a-22fe-4529-8960-cc18d78e8ead","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b12bdd51746d7427f3091db6b5498856","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"b12bdd51746d7427f3091db6b5498856","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fca47b90a-22fe-4529-8960-cc18d78e8ead': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fca47b90a-22fe-4529-8960-cc18d78e8ead","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]},"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":null},"raw_response":{},"request_id":"68e8da44-bcae-435d-9bb8-0f527e14e443","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213672.7865772} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5f5e04bc-a804-42c1-891f-8e6b3e5fe5f3","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213672.787081} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"973cdda5f1c38da97143a2583099946e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/ca74d541-b1a0-433f-898f-9dc13e764a31"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/109347f3-d9e0-4e43-9d77-fc27a624d9c7"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/ca47b90a-22fe-4529-8960-cc18d78e8ead"}}},"level":"info","message":"received a callback","requestID":"b12bdd51746d7427f3091db6b5498856"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"973cdda5f1c38da97143a2583099946e","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"f2f98a10-442a-11ef-8685-a1e9f27e6f28","responseTime":18,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/ca74d541-b1a0-433f-898f-9dc13e764a31"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/109347f3-d9e0-4e43-9d77-fc27a624d9c7"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/ca47b90a-22fe-4529-8960-cc18d78e8ead"}}},"level":"info","message":"received a callback","requestID":"973cdda5f1c38da97143a2583099946e"} device-1 | {"data":{"peerconnection":"ca47b90a-22fe-4529-8960-cc18d78e8ead","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"f2f98a10-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"DELETE /peerconnections/ca47b90a-22fe-4529-8960-cc18d78e8ead 204 61ms","method":"DELETE","requestID":"f2f98a10-442a-11ef-8685-a1e9f27e6f28","responseTime":61,"status":204,"url":"/peerconnections/ca47b90a-22fe-4529-8960-cc18d78e8ead"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c547aa19-556c-4a7f-9c67-0e56f4218213"},"level":"info","message":"Successfully finished experiment","requestID":"e735fe8ac2efe3b066c51be673a9f982"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f3076cc0-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":208,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:32Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fca74d541-b1a0-433f-898f-9dc13e764a31","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6503a1a4-551a-4783-89dd-e7fec278a073","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213672.851936} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":208,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.212099,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ca74d541-b1a0-433f-898f-9dc13e764a31","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f3076cc0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ca74d541-b1a0-433f-898f-9dc13e764a31","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"f3076cc0-442a-11ef-8685-a1e9f27e6f28","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f3076cc0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/ca74d541-b1a0-433f-898f-9dc13e764a31/signaling 200 15ms","method":"POST","requestID":"f3076cc0-442a-11ef-8685-a1e9f27e6f28","responseTime":15,"status":200,"url":"/devices/ca74d541-b1a0-433f-898f-9dc13e764a31/signaling"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc547aa19-556c-4a7f-9c67-0e56f4218213': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc547aa19-556c-4a7f-9c67-0e56f4218213","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]},"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":null},"raw_response":{},"request_id":"adcf7e57-2c08-4278-9f1d-65d8f2b7c19d","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213672.8598998} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0bc31a87-0eca-4e86-b1c6-ed6566fd984a","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213672.860566} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"e735fe8ac2efe3b066c51be673a9f982","responseTime":21,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f30a7a00-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":209,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:32Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F109347f3-d9e0-4e43-9d77-fc27a624d9c7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"38323e4b-b6e8-4895-8054-d8205509de02","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213672.8716965} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":209,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.574812,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/109347f3-d9e0-4e43-9d77-fc27a624d9c7","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f30a7a00-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/109347f3-d9e0-4e43-9d77-fc27a624d9c7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"f30a7a00-442a-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f30a7a00-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/109347f3-d9e0-4e43-9d77-fc27a624d9c7/signaling 200 15ms","method":"POST","requestID":"f30a7a00-442a-11ef-8685-a1e9f27e6f28","responseTime":15,"status":200,"url":"/devices/109347f3-d9e0-4e43-9d77-fc27a624d9c7/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/c547aa19-556c-4a7f-9c67-0e56f4218213","requestID":"e735fe8ac2efe3b066c51be673a9f982"} gateway-1 | {"time_local":"17/Jul/2024:10:54:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/c547aa19-556c-4a7f-9c67-0e56f4218213 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.205","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e735fe8ac2efe3b066c51be673a9f982"} gateway-1 | {"time_local":"17/Jul/2024:10:54:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2598","request_time":"4.769","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"409e91f73e71c758c459b5d1ac3dfc0d"} experiment-1 | {"level":"info","message":"DELETE /experiments/c547aa19-556c-4a7f-9c67-0e56f4218213 204 202ms","method":"DELETE","requestID":"e735fe8ac2efe3b066c51be673a9f982","responseTime":202,"status":204,"url":"/experiments/c547aa19-556c-4a7f-9c67-0e56f4218213"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY3Mn0.Gw8ZoZO8-SRSy4iUJHyObpK3As7GJqmiQj1uJLfoal4","level":"info","message":"auth send jwt","requestID":"03ae64e8bdb430e53bd44ad326ea9ac9"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"03ae64e8bdb430e53bd44ad326ea9ac9","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 151ms","method":"POST","requestID":"b12bdd51746d7427f3091db6b5498856","responseTime":151,"status":200,"url":"/callbacks/experiment"} device-1 | {"level":"info","message":"postDevices called","requestID":"03ae64e8bdb430e53bd44ad326ea9ac9"} gateway-1 | {"time_local":"17/Jul/2024:10:54:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.157","http_referrer":"","http_user_agent":"node-fetch","requestID":"b12bdd51746d7427f3091db6b5498856"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 150ms","method":"POST","requestID":"973cdda5f1c38da97143a2583099946e","responseTime":150,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:54:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.157","http_referrer":"","http_user_agent":"node-fetch","requestID":"973cdda5f1c38da97143a2583099946e"} gateway-1 | {"time_local":"17/Jul/2024:10:54:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2506","request_time":"3.308","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"b70e487bd7c30c2614d38ef9069a8e7e"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":210,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:32Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":210,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.226774,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:32Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"03ae64e8bdb430e53bd44ad326ea9ac9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213672,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY3Mn0.Gw8ZoZO8-SRSy4iUJHyObpK3As7GJqmiQj1uJLfoal4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"03ae64e8bdb430e53bd44ad326ea9ac9","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/109347f3-d9e0-4e43-9d77-fc27a624d9c7' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/ca74d541-b1a0-433f-898f-9dc13e764a31' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbc863f8e-0cd9-4e23-b6fd-f8abb84cc605","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"d9499a53-79ac-472c-a81f-ab8c252a587b","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213672.9635386} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"03ae64e8bdb430e53bd44ad326ea9ac9","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8dcc356b-c262-496e-a14e-605e885f1746","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213672.9694688} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"03ae64e8bdb430e53bd44ad326ea9ac9","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbc863f8e-0cd9-4e23-b6fd-f8abb84cc605","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"297ed6ea-9ac2-4261-80c1-5eea1bb06977","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213672.980353} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"152ad75f-fc0b-4d25-98a6-c969ef412848","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213672.9804797} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"03ae64e8bdb430e53bd44ad326ea9ac9","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbc863f8e-0cd9-4e23-b6fd-f8abb84cc605","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbc863f8e-0cd9-4e23-b6fd-f8abb84cc605","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:32.980335802Z"}]},"request_id":"e15f48f5-78ab-48f3-b415-e42a17e820fd","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213672.9857247} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"03ae64e8bdb430e53bd44ad326ea9ac9","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"03ae64e8bdb430e53bd44ad326ea9ac9"} gateway-1 | {"time_local":"17/Jul/2024:10:54:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.053","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"03ae64e8bdb430e53bd44ad326ea9ac9"} device-1 | {"level":"info","message":"POST /devices? 201 48ms","method":"POST","requestID":"03ae64e8bdb430e53bd44ad326ea9ac9","responseTime":48,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY3Mn0.Gw8ZoZO8-SRSy4iUJHyObpK3As7GJqmiQj1uJLfoal4","level":"info","message":"auth send jwt","requestID":"82b4184ee3217111b60598620507f0ba"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"82b4184ee3217111b60598620507f0ba","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"82b4184ee3217111b60598620507f0ba"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":211,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:32Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":211,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.676475,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:32Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"82b4184ee3217111b60598620507f0ba","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213672,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY3Mn0.Gw8ZoZO8-SRSy4iUJHyObpK3As7GJqmiQj1uJLfoal4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"82b4184ee3217111b60598620507f0ba","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3d0e2853-c010-4937-81c9-04ffceb13864","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"dd9cc1e6-f779-49f3-8d71-8435890e6d67","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213673.0085154} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"82b4184ee3217111b60598620507f0ba","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e8fbd562-7146-4abe-83ff-fa86f0688459","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213673.0137246} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"82b4184ee3217111b60598620507f0ba","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3d0e2853-c010-4937-81c9-04ffceb13864","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"686b6803-cc77-4a77-8e5a-fb3c40d21c26","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213673.0298824} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"619db1ed-b3e8-4e3c-8086-48f149de4f23","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213673.0300202} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"82b4184ee3217111b60598620507f0ba","responseTime":18,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3d0e2853-c010-4937-81c9-04ffceb13864","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3d0e2853-c010-4937-81c9-04ffceb13864","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:33.029862969Z"}]},"request_id":"05534b78-a406-4009-a3d6-75e172f18d40","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213673.0353334} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"82b4184ee3217111b60598620507f0ba","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"82b4184ee3217111b60598620507f0ba"} gateway-1 | {"time_local":"17/Jul/2024:10:54:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"82b4184ee3217111b60598620507f0ba"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"82b4184ee3217111b60598620507f0ba","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d504162846a1fbc5304e7b513b297e7e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"d504162846a1fbc5304e7b513b297e7e","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"17/Jul/2024:10:54:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/bc863f8e-0cd9-4e23-b6fd-f8abb84cc605/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"d504162846a1fbc5304e7b513b297e7e"} device-1 | {"level":"info","message":"OPTIONS /devices/bc863f8e-0cd9-4e23-b6fd-f8abb84cc605/websocket 200 1ms","method":"OPTIONS","requestID":"d504162846a1fbc5304e7b513b297e7e","responseTime":1,"status":200,"url":"/devices/bc863f8e-0cd9-4e23-b6fd-f8abb84cc605/websocket"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"00e03d984745cf59119bee2f0901368c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"00e03d984745cf59119bee2f0901368c","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"17/Jul/2024:10:54:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/3d0e2853-c010-4937-81c9-04ffceb13864/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.005","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"00e03d984745cf59119bee2f0901368c"} device-1 | {"level":"info","message":"OPTIONS /devices/3d0e2853-c010-4937-81c9-04ffceb13864/websocket 200 1ms","method":"OPTIONS","requestID":"00e03d984745cf59119bee2f0901368c","responseTime":1,"status":200,"url":"/devices/3d0e2853-c010-4937-81c9-04ffceb13864/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY3NX0.GrJdC6qTAza-y1MsLp_Nqn_GGImztdGjh8szqcSPgfQ","level":"info","message":"auth send jwt","requestID":"9bd30e4376a5a5b20f47f83b6032392f"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"9bd30e4376a5a5b20f47f83b6032392f","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"9bd30e4376a5a5b20f47f83b6032392f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY3NX0.GrJdC6qTAza-y1MsLp_Nqn_GGImztdGjh8szqcSPgfQ","level":"info","message":"auth send jwt","requestID":"6a82ebe76312a373942765fc4a1dab29"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"6a82ebe76312a373942765fc4a1dab29","responseTime":5,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":212,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:35Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"6a82ebe76312a373942765fc4a1dab29"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":212,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.926366,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:35Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/bc863f8e-0cd9-4e23-b6fd-f8abb84cc605","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"9bd30e4376a5a5b20f47f83b6032392f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/bc863f8e-0cd9-4e23-b6fd-f8abb84cc605","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213675,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY3NX0.GrJdC6qTAza-y1MsLp_Nqn_GGImztdGjh8szqcSPgfQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9bd30e4376a5a5b20f47f83b6032392f","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":213,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:35Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":213,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.797728,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:35Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3d0e2853-c010-4937-81c9-04ffceb13864","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"6a82ebe76312a373942765fc4a1dab29","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/3d0e2853-c010-4937-81c9-04ffceb13864","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213675,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY3NX0.GrJdC6qTAza-y1MsLp_Nqn_GGImztdGjh8szqcSPgfQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"6a82ebe76312a373942765fc4a1dab29","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"9bd30e4376a5a5b20f47f83b6032392f"} gateway-1 | {"time_local":"17/Jul/2024:10:54:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/bc863f8e-0cd9-4e23-b6fd-f8abb84cc605/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.034","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"9bd30e4376a5a5b20f47f83b6032392f"} device-1 | {"level":"info","message":"POST /devices/bc863f8e-0cd9-4e23-b6fd-f8abb84cc605/websocket 200 28ms","method":"POST","requestID":"9bd30e4376a5a5b20f47f83b6032392f","responseTime":28,"status":200,"url":"/devices/bc863f8e-0cd9-4e23-b6fd-f8abb84cc605/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"6a82ebe76312a373942765fc4a1dab29"} gateway-1 | {"time_local":"17/Jul/2024:10:54:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/3d0e2853-c010-4937-81c9-04ffceb13864/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.043","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"6a82ebe76312a373942765fc4a1dab29"} device-1 | {"level":"info","message":"POST /devices/3d0e2853-c010-4937-81c9-04ffceb13864/websocket 200 34ms","method":"POST","requestID":"6a82ebe76312a373942765fc4a1dab29","responseTime":34,"status":200,"url":"/devices/3d0e2853-c010-4937-81c9-04ffceb13864/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/bc863f8e-0cd9-4e23-b6fd-f8abb84cc605' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/3d0e2853-c010-4937-81c9-04ffceb13864' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY3NX0.GrJdC6qTAza-y1MsLp_Nqn_GGImztdGjh8szqcSPgfQ","level":"info","message":"auth send jwt","requestID":"9723d6eed0ee2a46be426037e04f7344"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"9723d6eed0ee2a46be426037e04f7344","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9723d6eed0ee2a46be426037e04f7344"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":214,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:35Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":214,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.168319,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bc863f8e-0cd9-4e23-b6fd-f8abb84cc605","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"9723d6eed0ee2a46be426037e04f7344","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/bc863f8e-0cd9-4e23-b6fd-f8abb84cc605","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213675,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY3NX0.GrJdC6qTAza-y1MsLp_Nqn_GGImztdGjh8szqcSPgfQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9723d6eed0ee2a46be426037e04f7344","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbc863f8e-0cd9-4e23-b6fd-f8abb84cc605","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbc863f8e-0cd9-4e23-b6fd-f8abb84cc605","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:32.980335802Z"}]},"request_id":"c8007f14-0002-41d5-a972-74e45c042f28","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213675.0884068} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9723d6eed0ee2a46be426037e04f7344","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9723d6eed0ee2a46be426037e04f7344"} device-1 | {"level":"info","message":"GET /devices/bc863f8e-0cd9-4e23-b6fd-f8abb84cc605? 200 18ms","method":"GET","requestID":"9723d6eed0ee2a46be426037e04f7344","responseTime":18,"status":200,"url":"/devices/bc863f8e-0cd9-4e23-b6fd-f8abb84cc605?"} gateway-1 | {"time_local":"17/Jul/2024:10:54:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/bc863f8e-0cd9-4e23-b6fd-f8abb84cc605? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9723d6eed0ee2a46be426037e04f7344"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY3NX0.GrJdC6qTAza-y1MsLp_Nqn_GGImztdGjh8szqcSPgfQ","level":"info","message":"auth send jwt","requestID":"4ac3ccb2c6e304e69326bae24daa4881"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"4ac3ccb2c6e304e69326bae24daa4881","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4ac3ccb2c6e304e69326bae24daa4881"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":215,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:35Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":215,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.141889,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3d0e2853-c010-4937-81c9-04ffceb13864","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"4ac3ccb2c6e304e69326bae24daa4881","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/3d0e2853-c010-4937-81c9-04ffceb13864","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213675,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY3NX0.GrJdC6qTAza-y1MsLp_Nqn_GGImztdGjh8szqcSPgfQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4ac3ccb2c6e304e69326bae24daa4881","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3d0e2853-c010-4937-81c9-04ffceb13864","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3d0e2853-c010-4937-81c9-04ffceb13864","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:33.029862969Z"}]},"request_id":"5df36b9e-ee9a-411c-aa0a-3b69c1df0e9a","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213675.113829} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4ac3ccb2c6e304e69326bae24daa4881","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4ac3ccb2c6e304e69326bae24daa4881"} gateway-1 | {"time_local":"17/Jul/2024:10:54:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3d0e2853-c010-4937-81c9-04ffceb13864? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4ac3ccb2c6e304e69326bae24daa4881"} device-1 | {"level":"info","message":"GET /devices/3d0e2853-c010-4937-81c9-04ffceb13864? 200 18ms","method":"GET","requestID":"4ac3ccb2c6e304e69326bae24daa4881","responseTime":18,"status":200,"url":"/devices/3d0e2853-c010-4937-81c9-04ffceb13864?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY3NX0.GrJdC6qTAza-y1MsLp_Nqn_GGImztdGjh8szqcSPgfQ","level":"info","message":"auth send jwt","requestID":"e148e26021239f2813b5767f1af4f3fb"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e148e26021239f2813b5767f1af4f3fb","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"e148e26021239f2813b5767f1af4f3fb"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":216,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:35Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":216,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.171489,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:35Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"e148e26021239f2813b5767f1af4f3fb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213675,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY3NX0.GrJdC6qTAza-y1MsLp_Nqn_GGImztdGjh8szqcSPgfQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e148e26021239f2813b5767f1af4f3fb","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/74aec680-6b65-4de9-a0b9-52be31a7cc1d"},"level":"info","message":"Attempting to run experiment","requestID":"e148e26021239f2813b5767f1af4f3fb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/74aec680-6b65-4de9-a0b9-52be31a7cc1d"},"level":"info","message":"Attempting to book experiment","requestID":"e148e26021239f2813b5767f1af4f3fb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/74aec680-6b65-4de9-a0b9-52be31a7cc1d"},"level":"info","message":"Successfully booked experiment","requestID":"e148e26021239f2813b5767f1af4f3fb"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f46a0a00-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f46a7f30-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":217,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:35Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":217,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.774855,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bc863f8e-0cd9-4e23-b6fd-f8abb84cc605","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f46a0a00-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/bc863f8e-0cd9-4e23-b6fd-f8abb84cc605","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213675,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY3NX0.GrJdC6qTAza-y1MsLp_Nqn_GGImztdGjh8szqcSPgfQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f46a0a00-442a-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60090","level":"info","msg":"Received request.","req_id":218,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:35Z"} authorization-1 | {"client_addr":"127.0.0.1:60090","level":"info","msg":"Sent response.","req_id":218,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.748401,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3d0e2853-c010-4937-81c9-04ffceb13864","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f46a7f30-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/3d0e2853-c010-4937-81c9-04ffceb13864","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213675,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY3NX0.GrJdC6qTAza-y1MsLp_Nqn_GGImztdGjh8szqcSPgfQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"f46a7f30-442a-11ef-8685-a1e9f27e6f28","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbc863f8e-0cd9-4e23-b6fd-f8abb84cc605","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbc863f8e-0cd9-4e23-b6fd-f8abb84cc605","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:32.980335802Z"}]},"request_id":"3ca3c5dc-4e8e-4cf8-8a3d-ca3ff83d2256","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213675.1820734} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"f46a0a00-442a-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3d0e2853-c010-4937-81c9-04ffceb13864","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3d0e2853-c010-4937-81c9-04ffceb13864","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:33.029862969Z"}]},"request_id":"b9976f62-a4f0-45ac-bee5-a5f31e30766f","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213675.1886683} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f46a0a00-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"f46a7f30-442a-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/bc863f8e-0cd9-4e23-b6fd-f8abb84cc605? 200 22ms","method":"GET","requestID":"f46a0a00-442a-11ef-8685-a1e9f27e6f28","responseTime":22,"status":200,"url":"/devices/bc863f8e-0cd9-4e23-b6fd-f8abb84cc605?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f46a7f30-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/3d0e2853-c010-4937-81c9-04ffceb13864? 200 24ms","method":"GET","requestID":"f46a7f30-442a-11ef-8685-a1e9f27e6f28","responseTime":24,"status":200,"url":"/devices/3d0e2853-c010-4937-81c9-04ffceb13864?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/74aec680-6b65-4de9-a0b9-52be31a7cc1d"},"level":"info","message":"Setting up experiment","requestID":"e148e26021239f2813b5767f1af4f3fb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/74aec680-6b65-4de9-a0b9-52be31a7cc1d"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"e148e26021239f2813b5767f1af4f3fb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/74aec680-6b65-4de9-a0b9-52be31a7cc1d"},"level":"info","message":"Successfully locked booking for experiment","requestID":"e148e26021239f2813b5767f1af4f3fb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/74aec680-6b65-4de9-a0b9-52be31a7cc1d"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"e148e26021239f2813b5767f1af4f3fb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/74aec680-6b65-4de9-a0b9-52be31a7cc1d"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"e148e26021239f2813b5767f1af4f3fb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/74aec680-6b65-4de9-a0b9-52be31a7cc1d"},"level":"info","message":"Attempting to update booking for experiment","requestID":"e148e26021239f2813b5767f1af4f3fb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/74aec680-6b65-4de9-a0b9-52be31a7cc1d"},"level":"info","message":"Successfully updated booking for experiment","requestID":"e148e26021239f2813b5767f1af4f3fb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/74aec680-6b65-4de9-a0b9-52be31a7cc1d"},"level":"info","message":"Successfully set up experiment","requestID":"e148e26021239f2813b5767f1af4f3fb"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f4763f00-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f4766610-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f476b430-442a-11ef-8685-a1e9f27e6f28"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/74aec680-6b65-4de9-a0b9-52be31a7cc1d"},"level":"info","message":"Successfully running experiment","requestID":"e148e26021239f2813b5767f1af4f3fb"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":219,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:35Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":219,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.868796,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:35Z"} authorization-1 | {"client_addr":"127.0.0.1:60090","level":"info","msg":"Received request.","req_id":220,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bc863f8e-0cd9-4e23-b6fd-f8abb84cc605","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f4763f00-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/bc863f8e-0cd9-4e23-b6fd-f8abb84cc605","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213675,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY3NX0.GrJdC6qTAza-y1MsLp_Nqn_GGImztdGjh8szqcSPgfQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f4763f00-442a-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60090","level":"info","msg":"Sent response.","req_id":220,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.174944,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3d0e2853-c010-4937-81c9-04ffceb13864","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f4766610-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/3d0e2853-c010-4937-81c9-04ffceb13864","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213675,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY3NX0.GrJdC6qTAza-y1MsLp_Nqn_GGImztdGjh8szqcSPgfQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f4766610-442a-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":221,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:35Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbc863f8e-0cd9-4e23-b6fd-f8abb84cc605","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4d3ea1d3-c41f-460b-a856-02d606f76cac","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213675.2584815} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":221,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.053268,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:35Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bc863f8e-0cd9-4e23-b6fd-f8abb84cc605","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f476b430-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bc863f8e-0cd9-4e23-b6fd-f8abb84cc605","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"f476b430-442a-11ef-8685-a1e9f27e6f28","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3d0e2853-c010-4937-81c9-04ffceb13864","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3d0e2853-c010-4937-81c9-04ffceb13864","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:33.029862969Z"}]},"request_id":"c190e010-3bfa-4925-952c-5e9766fe49c7","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213675.2629504} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"f4766610-442a-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbc863f8e-0cd9-4e23-b6fd-f8abb84cc605","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbc863f8e-0cd9-4e23-b6fd-f8abb84cc605","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:32.980335802Z"}]},"request_id":"4bb7d5ce-1f53-4e44-b443-77e51ed68f4d","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213675.2659965} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f4763f00-442a-11ef-8685-a1e9f27e6f28","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f476b430-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/bc863f8e-0cd9-4e23-b6fd-f8abb84cc605/signaling 200 17ms","method":"POST","requestID":"f476b430-442a-11ef-8685-a1e9f27e6f28","responseTime":17,"status":200,"url":"/devices/bc863f8e-0cd9-4e23-b6fd-f8abb84cc605/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f479c170-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f4766610-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F74aec680-6b65-4de9-a0b9-52be31a7cc1d#owner@http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F74aec680-6b65-4de9-a0b9-52be31a7cc1d","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"9bf0840d-c835-415f-b395-9c987467a7a2","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213675.272797} device-1 | {"level":"info","message":"GET /devices/3d0e2853-c010-4937-81c9-04ffceb13864? 200 25ms","method":"GET","requestID":"f4766610-442a-11ef-8685-a1e9f27e6f28","responseTime":25,"status":200,"url":"/devices/3d0e2853-c010-4937-81c9-04ffceb13864?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d157c3dd-a844-4866-b714-ce86ea12d073","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213675.2731786} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f4763f00-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/bc863f8e-0cd9-4e23-b6fd-f8abb84cc605? 200 28ms","method":"GET","requestID":"f4763f00-442a-11ef-8685-a1e9f27e6f28","responseTime":28,"status":200,"url":"/devices/bc863f8e-0cd9-4e23-b6fd-f8abb84cc605?"} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"e148e26021239f2813b5767f1af4f3fb","responseTime":20,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3d0e2853-c010-4937-81c9-04ffceb13864","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"64606e2e-3624-4f66-bbe3-329e30721c13","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213675.2768216} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":222,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:35Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":222,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.390312,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:35Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3d0e2853-c010-4937-81c9-04ffceb13864","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f479c170-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3d0e2853-c010-4937-81c9-04ffceb13864","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"f479c170-442a-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f47af9f0-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":223,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:35Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f479c170-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/3d0e2853-c010-4937-81c9-04ffceb13864/signaling 200 14ms","method":"POST","requestID":"f479c170-442a-11ef-8685-a1e9f27e6f28","responseTime":14,"status":200,"url":"/devices/3d0e2853-c010-4937-81c9-04ffceb13864/signaling"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbc863f8e-0cd9-4e23-b6fd-f8abb84cc605","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9355ab94-fa9d-4f6b-b660-32c53762aa45","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213675.285142} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":223,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.719097,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:35Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bc863f8e-0cd9-4e23-b6fd-f8abb84cc605","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f47af9f0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bc863f8e-0cd9-4e23-b6fd-f8abb84cc605","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/74aec680-6b65-4de9-a0b9-52be31a7cc1d","user":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"e148e26021239f2813b5767f1af4f3fb"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f47af9f0-442a-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"17/Jul/2024:10:54:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"777","request_time":"0.168","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e148e26021239f2813b5767f1af4f3fb"} experiment-1 | {"level":"info","message":"POST /experiments? 201 161ms","method":"POST","requestID":"e148e26021239f2813b5767f1af4f3fb","responseTime":161,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f47af9f0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/bc863f8e-0cd9-4e23-b6fd-f8abb84cc605/signaling 200 12ms","method":"POST","requestID":"f47af9f0-442a-11ef-8685-a1e9f27e6f28","responseTime":12,"status":200,"url":"/devices/bc863f8e-0cd9-4e23-b6fd-f8abb84cc605/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f47d1cd0-442a-11ef-8685-a1e9f27e6f28"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY3NX0.GrJdC6qTAza-y1MsLp_Nqn_GGImztdGjh8szqcSPgfQ","level":"info","message":"auth send jwt","requestID":"29329f44d4fdc0d4b33b8d93ce2ff63c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"29329f44d4fdc0d4b33b8d93ce2ff63c","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"29329f44d4fdc0d4b33b8d93ce2ff63c"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":224,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:35Z"} authorization-1 | {"client_addr":"127.0.0.1:60090","level":"info","msg":"Received request.","req_id":225,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:35Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3d0e2853-c010-4937-81c9-04ffceb13864","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"99c9fa5f-3155-4746-95b2-fc58c4233503","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213675.2994938} authorization-1 | {"client_addr":"127.0.0.1:60090","level":"info","msg":"Sent response.","req_id":225,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.228585,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bc863f8e-0cd9-4e23-b6fd-f8abb84cc605","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"29329f44d4fdc0d4b33b8d93ce2ff63c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/bc863f8e-0cd9-4e23-b6fd-f8abb84cc605","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213675,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY3NX0.GrJdC6qTAza-y1MsLp_Nqn_GGImztdGjh8szqcSPgfQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"29329f44d4fdc0d4b33b8d93ce2ff63c","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":224,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.496233,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:35Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3d0e2853-c010-4937-81c9-04ffceb13864","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f47d1cd0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3d0e2853-c010-4937-81c9-04ffceb13864","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"f47d1cd0-442a-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbc863f8e-0cd9-4e23-b6fd-f8abb84cc605","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbc863f8e-0cd9-4e23-b6fd-f8abb84cc605","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:32.980335802Z"}]},"request_id":"6570d260-4391-4c30-9974-45f7d528877c","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213675.3055642} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"29329f44d4fdc0d4b33b8d93ce2ff63c","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f47d1cd0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/3d0e2853-c010-4937-81c9-04ffceb13864/signaling 200 14ms","method":"POST","requestID":"f47d1cd0-442a-11ef-8685-a1e9f27e6f28","responseTime":14,"status":200,"url":"/devices/3d0e2853-c010-4937-81c9-04ffceb13864/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/74aec680-6b65-4de9-a0b9-52be31a7cc1d"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"e148e26021239f2813b5767f1af4f3fb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/74aec680-6b65-4de9-a0b9-52be31a7cc1d"},"level":"info","message":"Building connection plan","requestID":"e148e26021239f2813b5767f1af4f3fb"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"8bd59d66-0803-4b3f-8461-db99f0b4ff44"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"09268847-aa7b-498c-966d-eb15b29e2955"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/file","uuid":"ff7da30a-f1b2-45eb-ac8d-73c50c3d7c6d"}]},"level":"info","message":"Built pairwise service configurations","requestID":"e148e26021239f2813b5767f1af4f3fb"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/3d0e2853-c010-4937-81c9-04ffceb13864"},{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/bc863f8e-0cd9-4e23-b6fd-f8abb84cc605"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"e148e26021239f2813b5767f1af4f3fb"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"f47fdbf0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"29329f44d4fdc0d4b33b8d93ce2ff63c"} gateway-1 | {"time_local":"17/Jul/2024:10:54:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/bc863f8e-0cd9-4e23-b6fd-f8abb84cc605? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"29329f44d4fdc0d4b33b8d93ce2ff63c"} device-1 | {"level":"info","message":"GET /devices/bc863f8e-0cd9-4e23-b6fd-f8abb84cc605? 200 18ms","method":"GET","requestID":"29329f44d4fdc0d4b33b8d93ce2ff63c","responseTime":18,"status":200,"url":"/devices/bc863f8e-0cd9-4e23-b6fd-f8abb84cc605?"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":226,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:35Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":226,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.872102,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:35Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f47fdbf0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213675,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY3NX0.GrJdC6qTAza-y1MsLp_Nqn_GGImztdGjh8szqcSPgfQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f47fdbf0-442a-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY3NX0.GrJdC6qTAza-y1MsLp_Nqn_GGImztdGjh8szqcSPgfQ","level":"info","message":"auth send jwt","requestID":"de1c50ff9b1e757d2494922f618654fc"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"de1c50ff9b1e757d2494922f618654fc","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"de1c50ff9b1e757d2494922f618654fc"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":227,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:35Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":227,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.820146,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3d0e2853-c010-4937-81c9-04ffceb13864","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"de1c50ff9b1e757d2494922f618654fc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/3d0e2853-c010-4937-81c9-04ffceb13864","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213675,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY3NX0.GrJdC6qTAza-y1MsLp_Nqn_GGImztdGjh8szqcSPgfQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"de1c50ff9b1e757d2494922f618654fc","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"e12eb0f9-c152-4646-9d89-77ac613b7271","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213675.3287256} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d2690cb3-2fbc-4db8-b854-943327b93237","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213675.3289106} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3d0e2853-c010-4937-81c9-04ffceb13864","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3d0e2853-c010-4937-81c9-04ffceb13864","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:33.029862969Z"}]},"request_id":"cfd57b27-6c4d-4b96-9a2e-50a98fb9392d","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213675.3302295} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"f47fdbf0-442a-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/relations/update"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"de1c50ff9b1e757d2494922f618654fc","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"de1c50ff9b1e757d2494922f618654fc"} gateway-1 | {"time_local":"17/Jul/2024:10:54:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3d0e2853-c010-4937-81c9-04ffceb13864? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"de1c50ff9b1e757d2494922f618654fc"} device-1 | {"level":"info","message":"GET /devices/3d0e2853-c010-4937-81c9-04ffceb13864? 200 16ms","method":"GET","requestID":"de1c50ff9b1e757d2494922f618654fc","responseTime":16,"status":200,"url":"/devices/3d0e2853-c010-4937-81c9-04ffceb13864?"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"f47fdbf0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"f47fdbf0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/5b9d7c52-f636-401b-be57-b1b4fdd39056'","requestID":"f47fdbf0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/5b9d7c52-f636-401b-be57-b1b4fdd39056'","requestID":"f47fdbf0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"f47fdbf0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 35ms","method":"POST","requestID":"f47fdbf0-442a-11ef-8685-a1e9f27e6f28","responseTime":35,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"f47fdbf0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/5b9d7c52-f636-401b-be57-b1b4fdd39056","device":"3d0e2853-c010-4937-81c9-04ffceb13864","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}],"tiebreaker":false} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/5b9d7c52-f636-401b-be57-b1b4fdd39056","device":"bc863f8e-0cd9-4e23-b6fd-f8abb84cc605","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}],"tiebreaker":true} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/74aec680-6b65-4de9-a0b9-52be31a7cc1d"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"e148e26021239f2813b5767f1af4f3fb"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f48a3c30-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":228,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:35Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbc863f8e-0cd9-4e23-b6fd-f8abb84cc605","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"dafb12a4-6938-43c2-90ac-48d9e01a77dd","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213675.3846333} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":228,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.602664,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:35Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bc863f8e-0cd9-4e23-b6fd-f8abb84cc605","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f48a3c30-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bc863f8e-0cd9-4e23-b6fd-f8abb84cc605","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f48a3c30-442a-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f48a3c30-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/bc863f8e-0cd9-4e23-b6fd-f8abb84cc605/signaling 200 10ms","method":"POST","requestID":"f48a3c30-442a-11ef-8685-a1e9f27e6f28","responseTime":10,"status":200,"url":"/devices/bc863f8e-0cd9-4e23-b6fd-f8abb84cc605/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f48c10f0-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":229,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:35Z"} device-1 | {"device":"3d0e2853-c010-4937-81c9-04ffceb13864","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3d0e2853-c010-4937-81c9-04ffceb13864","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"718b4288-5165-42dc-9eb2-6f835ca7f3ff","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213675.3973048} device-1 | {"content":{"canTrickle":true},"device":"3d0e2853-c010-4937-81c9-04ffceb13864","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":229,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.709984,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:35Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3d0e2853-c010-4937-81c9-04ffceb13864","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f48c10f0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3d0e2853-c010-4937-81c9-04ffceb13864","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f48c10f0-442a-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"device":"bc863f8e-0cd9-4e23-b6fd-f8abb84cc605","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"bc863f8e-0cd9-4e23-b6fd-f8abb84cc605","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f48c10f0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/3d0e2853-c010-4937-81c9-04ffceb13864/signaling 200 13ms","method":"POST","requestID":"f48c10f0-442a-11ef-8685-a1e9f27e6f28","responseTime":13,"status":200,"url":"/devices/3d0e2853-c010-4937-81c9-04ffceb13864/signaling"} device-1 | {"content":{"sdp":"v=0\r\no=- 9081245141297586838 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:M4Zq\r\na=ice-pwd:5I8jqq1uOxJxiZiLw83aXhDq\r\na=ice-options:trickle\r\na=fingerprint:sha-256 A1:BC:C7:A9:E6:E6:8A:A4:72:11:CC:44:FF:5B:B9:6D:68:C5:87:45:28:34:FB:84:A0:15:DC:E6:9D:78:E6:3F\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"bc863f8e-0cd9-4e23-b6fd-f8abb84cc605","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 6297854429942540798 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:0H6x\r\na=ice-pwd:haRVIKsucmLo+fQy+Alb8OWI\r\na=ice-options:trickle\r\na=fingerprint:sha-256 79:62:25:2C:80:73:04:98:1D:08:C5:CA:3F:A3:96:AC:EE:B4:B9:6C:85:8D:36:3F:5E:4D:34:D5:1A:21:6E:34\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"3d0e2853-c010-4937-81c9-04ffceb13864","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:1362391140 1 udp 2113937151 7a25cd39-ba8d-4d63-8925-aef0a12d91e7.local 47726 typ host generation 0 ufrag 0H6x network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"3d0e2853-c010-4937-81c9-04ffceb13864","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:229393618 1 udp 1677729535 141.24.211.56 47726 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag 0H6x network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"3d0e2853-c010-4937-81c9-04ffceb13864","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3502452636 1 udp 2113937151 a299a1b6-5162-4ca0-be94-2db0871406d1.local 54953 typ host generation 0 ufrag M4Zq network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"bc863f8e-0cd9-4e23-b6fd-f8abb84cc605","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1424901603 1 udp 1677729535 141.24.211.56 54953 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag M4Zq network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"bc863f8e-0cd9-4e23-b6fd-f8abb84cc605","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/3d0e2853-c010-4937-81c9-04ffceb13864'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/bc863f8e-0cd9-4e23-b6fd-f8abb84cc605'"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9b9ae7d366cd2221cbc6bb45e605b51c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"9b9ae7d366cd2221cbc6bb45e605b51c","responseTime":1,"status":200,"url":"/auth"} device-1 | {"device":"bc863f8e-0cd9-4e23-b6fd-f8abb84cc605","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"new","url":"http://localhost/devices/3d0e2853-c010-4937-81c9-04ffceb13864"},{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connecting","url":"http://localhost/devices/bc863f8e-0cd9-4e23-b6fd-f8abb84cc605"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/5b9d7c52-f636-401b-be57-b1b4fdd39056"}}},"level":"info","message":"received a callback","requestID":"9b9ae7d366cd2221cbc6bb45e605b51c"} device-1 | {"device":"bc863f8e-0cd9-4e23-b6fd-f8abb84cc605","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"3d0e2853-c010-4937-81c9-04ffceb13864","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"3d0e2853-c010-4937-81c9-04ffceb13864","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/5b9d7c52-f636-401b-be57-b1b4fdd39056' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"5b9d7c52-f636-401b-be57-b1b4fdd39056","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"bc863f8e-0cd9-4e23-b6fd-f8abb84cc605","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"3d0e2853-c010-4937-81c9-04ffceb13864","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"9b9ae7d366cd2221cbc6bb45e605b51c","responseTime":7,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:54:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.010","http_referrer":"","http_user_agent":"node-fetch","requestID":"9b9ae7d366cd2221cbc6bb45e605b51c"} device-1 | {"device":"3d0e2853-c010-4937-81c9-04ffceb13864","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"5b9d7c52-f636-401b-be57-b1b4fdd39056","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"5b9d7c52-f636-401b-be57-b1b4fdd39056","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/5b9d7c52-f636-401b-be57-b1b4fdd39056' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"5b9d7c52-f636-401b-be57-b1b4fdd39056","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6e8f652b1db6487cedb8a617640c5d9b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/3d0e2853-c010-4937-81c9-04ffceb13864"},{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/bc863f8e-0cd9-4e23-b6fd-f8abb84cc605"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/5b9d7c52-f636-401b-be57-b1b4fdd39056"}}},"level":"info","message":"received a callback","requestID":"6e8f652b1db6487cedb8a617640c5d9b"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"6e8f652b1db6487cedb8a617640c5d9b","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"f498e230-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":230,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:35Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F5b9d7c52-f636-401b-be57-b1b4fdd39056","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6fb7ddc8-c4c3-4a18-8816-775639b2b0bb","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213675.4804723} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":230,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":5.170881,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/5b9d7c52-f636-401b-be57-b1b4fdd39056","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f498e230-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/5b9d7c52-f636-401b-be57-b1b4fdd39056","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"f498e230-442a-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"f498e230-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /peerconnections/5b9d7c52-f636-401b-be57-b1b4fdd39056 200 16ms","method":"GET","requestID":"f498e230-442a-11ef-8685-a1e9f27e6f28","responseTime":16,"status":200,"url":"/peerconnections/5b9d7c52-f636-401b-be57-b1b4fdd39056"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 35ms","method":"POST","requestID":"6e8f652b1db6487cedb8a617640c5d9b","responseTime":35,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:54:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.039","http_referrer":"","http_user_agent":"node-fetch","requestID":"6e8f652b1db6487cedb8a617640c5d9b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f49d9d20-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":231,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:35Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3d0e2853-c010-4937-81c9-04ffceb13864","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"28df81bb-8799-4b48-9db8-4fc3e6efe1b9","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213675.5109851} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":231,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.920172,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:35Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3d0e2853-c010-4937-81c9-04ffceb13864","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f49d9d20-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3d0e2853-c010-4937-81c9-04ffceb13864","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f49d9d20-442a-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f49d9d20-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/3d0e2853-c010-4937-81c9-04ffceb13864/signaling 200 10ms","method":"POST","requestID":"f49d9d20-442a-11ef-8685-a1e9f27e6f28","responseTime":10,"status":200,"url":"/devices/3d0e2853-c010-4937-81c9-04ffceb13864/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f49f71e0-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":232,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:35Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbc863f8e-0cd9-4e23-b6fd-f8abb84cc605","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2adf6eb8-4418-4cec-b269-f299590057cc","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213675.523186} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":232,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.354921,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:35Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bc863f8e-0cd9-4e23-b6fd-f8abb84cc605","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f49f71e0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bc863f8e-0cd9-4e23-b6fd-f8abb84cc605","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f49f71e0-442a-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f49f71e0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/bc863f8e-0cd9-4e23-b6fd-f8abb84cc605/signaling 200 10ms","method":"POST","requestID":"f49f71e0-442a-11ef-8685-a1e9f27e6f28","responseTime":10,"status":200,"url":"/devices/bc863f8e-0cd9-4e23-b6fd-f8abb84cc605/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY3NX0.GrJdC6qTAza-y1MsLp_Nqn_GGImztdGjh8szqcSPgfQ","level":"info","message":"auth send jwt","requestID":"2722fc177709c9a095cebe9d69958feb"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2722fc177709c9a095cebe9d69958feb","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/74aec680-6b65-4de9-a0b9-52be31a7cc1d","requestID":"2722fc177709c9a095cebe9d69958feb"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":233,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:35Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":233,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.161654,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/74aec680-6b65-4de9-a0b9-52be31a7cc1d","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"2722fc177709c9a095cebe9d69958feb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:http://localhost/experiments/74aec680-6b65-4de9-a0b9-52be31a7cc1d","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213675,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY3NX0.GrJdC6qTAza-y1MsLp_Nqn_GGImztdGjh8szqcSPgfQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2722fc177709c9a095cebe9d69958feb","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/74aec680-6b65-4de9-a0b9-52be31a7cc1d","requestID":"2722fc177709c9a095cebe9d69958feb"} gateway-1 | {"time_local":"17/Jul/2024:10:54:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/74aec680-6b65-4de9-a0b9-52be31a7cc1d HTTP/1.1","status": "200","body_bytes_sent":"850","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2722fc177709c9a095cebe9d69958feb"} experiment-1 | {"level":"info","message":"GET /experiments/74aec680-6b65-4de9-a0b9-52be31a7cc1d 200 18ms","method":"GET","requestID":"2722fc177709c9a095cebe9d69958feb","responseTime":18,"status":200,"url":"/experiments/74aec680-6b65-4de9-a0b9-52be31a7cc1d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY3NX0.GrJdC6qTAza-y1MsLp_Nqn_GGImztdGjh8szqcSPgfQ","level":"info","message":"auth send jwt","requestID":"6b87f68de8e4cce903f2f0fab0d6aea8"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"6b87f68de8e4cce903f2f0fab0d6aea8","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/74aec680-6b65-4de9-a0b9-52be31a7cc1d","requestID":"6b87f68de8e4cce903f2f0fab0d6aea8"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":234,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:35Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":234,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.485303,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:35Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/74aec680-6b65-4de9-a0b9-52be31a7cc1d","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"6b87f68de8e4cce903f2f0fab0d6aea8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:http://localhost/experiments/74aec680-6b65-4de9-a0b9-52be31a7cc1d","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213675,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY3NX0.GrJdC6qTAza-y1MsLp_Nqn_GGImztdGjh8szqcSPgfQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"6b87f68de8e4cce903f2f0fab0d6aea8","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/74aec680-6b65-4de9-a0b9-52be31a7cc1d"},"level":"info","message":"Attempting to finish experiment","requestID":"6b87f68de8e4cce903f2f0fab0d6aea8"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"f4c1c6f0-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":235,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:35Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":235,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":2.28812,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:35Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/5b9d7c52-f636-401b-be57-b1b4fdd39056","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f4c1c6f0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"peerconnection:http://localhost/peerconnections/5b9d7c52-f636-401b-be57-b1b4fdd39056","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213675,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY3NX0.GrJdC6qTAza-y1MsLp_Nqn_GGImztdGjh8szqcSPgfQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"f4c1c6f0-442a-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/5b9d7c52-f636-401b-be57-b1b4fdd39056","device":"3d0e2853-c010-4937-81c9-04ffceb13864","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/5b9d7c52-f636-401b-be57-b1b4fdd39056","device":"bc863f8e-0cd9-4e23-b6fd-f8abb84cc605","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/5b9d7c52-f636-401b-be57-b1b4fdd39056' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/5b9d7c52-f636-401b-be57-b1b4fdd39056' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"5b9d7c52-f636-401b-be57-b1b4fdd39056","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ed2fdfbb9c684b9d0096092b7df97370","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F5b9d7c52-f636-401b-be57-b1b4fdd39056': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F5b9d7c52-f636-401b-be57-b1b4fdd39056","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]},"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":null},"raw_response":{},"request_id":"f89ef865-e307-47f8-bf64-2cb4daa7a874","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213675.7690012} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fffe8cf2-d2fe-40ba-8d94-6fa73f421a72","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213675.7692373} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"ed2fdfbb9c684b9d0096092b7df97370","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c41e28e0bd1137e01e3081291d9b07a4","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/3d0e2853-c010-4937-81c9-04ffceb13864"},{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/bc863f8e-0cd9-4e23-b6fd-f8abb84cc605"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/5b9d7c52-f636-401b-be57-b1b4fdd39056"}}},"level":"info","message":"received a callback","requestID":"ed2fdfbb9c684b9d0096092b7df97370"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"c41e28e0bd1137e01e3081291d9b07a4","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"f4c1c6f0-442a-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/3d0e2853-c010-4937-81c9-04ffceb13864"},{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/bc863f8e-0cd9-4e23-b6fd-f8abb84cc605"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/5b9d7c52-f636-401b-be57-b1b4fdd39056"}}},"level":"info","message":"received a callback","requestID":"c41e28e0bd1137e01e3081291d9b07a4"} device-1 | {"data":{"peerconnection":"5b9d7c52-f636-401b-be57-b1b4fdd39056","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"f4c1c6f0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"DELETE /peerconnections/5b9d7c52-f636-401b-be57-b1b4fdd39056 204 47ms","method":"DELETE","requestID":"f4c1c6f0-442a-11ef-8685-a1e9f27e6f28","responseTime":47,"status":204,"url":"/peerconnections/5b9d7c52-f636-401b-be57-b1b4fdd39056"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/74aec680-6b65-4de9-a0b9-52be31a7cc1d"},"level":"info","message":"Successfully finished experiment","requestID":"6b87f68de8e4cce903f2f0fab0d6aea8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f4cc0020-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":236,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:35Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3d0e2853-c010-4937-81c9-04ffceb13864","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f949cfd4-7037-47a3-959c-a424ea1f9a07","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213675.8183875} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":236,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.938068,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:35Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3d0e2853-c010-4937-81c9-04ffceb13864","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f4cc0020-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3d0e2853-c010-4937-81c9-04ffceb13864","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 15ms","method":"POST","requestID":"f4cc0020-442a-11ef-8685-a1e9f27e6f28","responseTime":15,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F74aec680-6b65-4de9-a0b9-52be31a7cc1d': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F74aec680-6b65-4de9-a0b9-52be31a7cc1d","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]},"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":null},"raw_response":{},"request_id":"de8b7515-e748-41bf-b98b-49bf3f442506","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213675.825631} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"af4c2ed8-f78e-493b-b789-871c614f2537","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213675.8259432} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f4cc0020-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"6b87f68de8e4cce903f2f0fab0d6aea8","responseTime":22,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"POST /devices/3d0e2853-c010-4937-81c9-04ffceb13864/signaling 200 21ms","method":"POST","requestID":"f4cc0020-442a-11ef-8685-a1e9f27e6f28","responseTime":21,"status":200,"url":"/devices/3d0e2853-c010-4937-81c9-04ffceb13864/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f4cff7c0-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":237,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:35Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbc863f8e-0cd9-4e23-b6fd-f8abb84cc605","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8349b297-9ea1-4c19-8814-7745325be17b","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213675.842732} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":237,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.878265,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:35Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bc863f8e-0cd9-4e23-b6fd-f8abb84cc605","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f4cff7c0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bc863f8e-0cd9-4e23-b6fd-f8abb84cc605","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"f4cff7c0-442a-11ef-8685-a1e9f27e6f28","responseTime":11,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f4cff7c0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/bc863f8e-0cd9-4e23-b6fd-f8abb84cc605/signaling 200 16ms","method":"POST","requestID":"f4cff7c0-442a-11ef-8685-a1e9f27e6f28","responseTime":16,"status":200,"url":"/devices/bc863f8e-0cd9-4e23-b6fd-f8abb84cc605/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/74aec680-6b65-4de9-a0b9-52be31a7cc1d","requestID":"6b87f68de8e4cce903f2f0fab0d6aea8"} gateway-1 | {"time_local":"17/Jul/2024:10:54:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/74aec680-6b65-4de9-a0b9-52be31a7cc1d HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.178","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6b87f68de8e4cce903f2f0fab0d6aea8"} experiment-1 | {"level":"info","message":"DELETE /experiments/74aec680-6b65-4de9-a0b9-52be31a7cc1d 204 175ms","method":"DELETE","requestID":"6b87f68de8e4cce903f2f0fab0d6aea8","responseTime":175,"status":204,"url":"/experiments/74aec680-6b65-4de9-a0b9-52be31a7cc1d"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 133ms","method":"POST","requestID":"ed2fdfbb9c684b9d0096092b7df97370","responseTime":133,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:54:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.137","http_referrer":"","http_user_agent":"node-fetch","requestID":"ed2fdfbb9c684b9d0096092b7df97370"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 133ms","method":"POST","requestID":"c41e28e0bd1137e01e3081291d9b07a4","responseTime":133,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:54:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.138","http_referrer":"","http_user_agent":"node-fetch","requestID":"c41e28e0bd1137e01e3081291d9b07a4"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY3NX0.GrJdC6qTAza-y1MsLp_Nqn_GGImztdGjh8szqcSPgfQ","level":"info","message":"auth send jwt","requestID":"41791ff1ac51bce93bf08f4410d79d0b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"41791ff1ac51bce93bf08f4410d79d0b","responseTime":4,"status":200,"url":"/auth"} gateway-1 | {"time_local":"17/Jul/2024:10:54:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2630","request_time":"0.867","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"c53244984f24c4ce6408c326f45d37d7"} device-1 | {"level":"info","message":"postDevices called","requestID":"41791ff1ac51bce93bf08f4410d79d0b"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":238,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:35Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":238,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.877982,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:35Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"41791ff1ac51bce93bf08f4410d79d0b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213675,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY3NX0.GrJdC6qTAza-y1MsLp_Nqn_GGImztdGjh8szqcSPgfQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"41791ff1ac51bce93bf08f4410d79d0b","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"17/Jul/2024:10:54:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2631","request_time":"0.863","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"07245c57cc24269614e663d893e84cd9"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/bc863f8e-0cd9-4e23-b6fd-f8abb84cc605' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2061e5cf-9cf6-4204-8f82-178c940d1db3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"f4b04ebe-e5d7-4b71-b730-c73f5cccc727","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213675.9290097} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"41791ff1ac51bce93bf08f4410d79d0b","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/3d0e2853-c010-4937-81c9-04ffceb13864' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4598bd78-a694-41fa-9efa-ef60ed4ff25c","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213675.9345958} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"41791ff1ac51bce93bf08f4410d79d0b","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2061e5cf-9cf6-4204-8f82-178c940d1db3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"305f8425-e1bc-4dfc-8ac0-1e3b7d625b94","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213675.9451785} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2cf62452-a41b-4e68-8aa2-e58c4b4b662d","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213675.9454288} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"41791ff1ac51bce93bf08f4410d79d0b","responseTime":12,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2061e5cf-9cf6-4204-8f82-178c940d1db3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2061e5cf-9cf6-4204-8f82-178c940d1db3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:35.945150866Z"}]},"request_id":"d9e27943-c0c7-4b28-b662-cd4a36f78fc7","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213675.949175} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"41791ff1ac51bce93bf08f4410d79d0b","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"41791ff1ac51bce93bf08f4410d79d0b"} gateway-1 | {"time_local":"17/Jul/2024:10:54:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"41791ff1ac51bce93bf08f4410d79d0b"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"41791ff1ac51bce93bf08f4410d79d0b","responseTime":44,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY3NX0.GrJdC6qTAza-y1MsLp_Nqn_GGImztdGjh8szqcSPgfQ","level":"info","message":"auth send jwt","requestID":"1f8e689ff1b3e5789e9f7921c499a7b3"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1f8e689ff1b3e5789e9f7921c499a7b3","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"1f8e689ff1b3e5789e9f7921c499a7b3"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":239,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:35Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":239,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.678735,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:35Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1f8e689ff1b3e5789e9f7921c499a7b3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213675,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY3NX0.GrJdC6qTAza-y1MsLp_Nqn_GGImztdGjh8szqcSPgfQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1f8e689ff1b3e5789e9f7921c499a7b3","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff956f658-96e9-49cf-b455-6fb2330458b6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"fc71198f-ecb1-470e-8ace-6643090120b8","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213675.9723685} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1f8e689ff1b3e5789e9f7921c499a7b3","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5ffe2aad-f934-49c7-98d1-eaabbcdd3b82","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213675.9764361} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"1f8e689ff1b3e5789e9f7921c499a7b3","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff956f658-96e9-49cf-b455-6fb2330458b6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"ffa1cc2a-9270-42a9-ae8f-0763c5e26f61","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213675.9927423} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"773d059f-4de8-4b7d-a30e-ae1db6f028b9","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213675.9927456} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"1f8e689ff1b3e5789e9f7921c499a7b3","responseTime":19,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff956f658-96e9-49cf-b455-6fb2330458b6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff956f658-96e9-49cf-b455-6fb2330458b6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:35.992709519Z"}]},"request_id":"bd7d08a6-0d60-4622-858c-a8ab1fb99e49","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213675.9971852} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1f8e689ff1b3e5789e9f7921c499a7b3","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"1f8e689ff1b3e5789e9f7921c499a7b3"} gateway-1 | {"time_local":"17/Jul/2024:10:54:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1f8e689ff1b3e5789e9f7921c499a7b3"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"1f8e689ff1b3e5789e9f7921c499a7b3","responseTime":44,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY3Nn0.lP4PHk2tp66k9oghR8xcxDV9KiouNoYv3LCjlKirVhE","level":"info","message":"auth send jwt","requestID":"12fe20e67a4cf8d00b24bea2214422c3"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"12fe20e67a4cf8d00b24bea2214422c3","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"12fe20e67a4cf8d00b24bea2214422c3"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":240,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:36Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":240,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.296269,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:36Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f956f658-96e9-49cf-b455-6fb2330458b6","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"12fe20e67a4cf8d00b24bea2214422c3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/f956f658-96e9-49cf-b455-6fb2330458b6","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213676,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY3Nn0.lP4PHk2tp66k9oghR8xcxDV9KiouNoYv3LCjlKirVhE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"12fe20e67a4cf8d00b24bea2214422c3","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff956f658-96e9-49cf-b455-6fb2330458b6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff956f658-96e9-49cf-b455-6fb2330458b6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:35.992709519Z"}]},"request_id":"35960e52-8bad-4f47-8fe9-34e224a3c32f","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213676.4944398} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"12fe20e67a4cf8d00b24bea2214422c3","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"776258c4-5bc8-44f6-bbb9-bb5f9b210c62","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213676.5031598} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"12fe20e67a4cf8d00b24bea2214422c3","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff956f658-96e9-49cf-b455-6fb2330458b6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff956f658-96e9-49cf-b455-6fb2330458b6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:35.992709519Z"}]},"request_id":"b8401752-aba9-4512-95ea-d803176ae10a","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213676.5163054} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"12fe20e67a4cf8d00b24bea2214422c3","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"12fe20e67a4cf8d00b24bea2214422c3"} device-1 | {"level":"info","message":"PATCH /devices/f956f658-96e9-49cf-b455-6fb2330458b6 200 40ms","method":"PATCH","requestID":"12fe20e67a4cf8d00b24bea2214422c3","responseTime":40,"status":200,"url":"/devices/f956f658-96e9-49cf-b455-6fb2330458b6"} gateway-1 | {"time_local":"17/Jul/2024:10:54:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/f956f658-96e9-49cf-b455-6fb2330458b6 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.044","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"12fe20e67a4cf8d00b24bea2214422c3"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY3Nn0.lP4PHk2tp66k9oghR8xcxDV9KiouNoYv3LCjlKirVhE","level":"info","message":"auth send jwt","requestID":"01bff6a761b5c12eb18c2d05ec4f1a91"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"01bff6a761b5c12eb18c2d05ec4f1a91","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"01bff6a761b5c12eb18c2d05ec4f1a91"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":241,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:36Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":241,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.677993,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:36Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f956f658-96e9-49cf-b455-6fb2330458b6","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"01bff6a761b5c12eb18c2d05ec4f1a91","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/f956f658-96e9-49cf-b455-6fb2330458b6","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213676,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY3Nn0.lP4PHk2tp66k9oghR8xcxDV9KiouNoYv3LCjlKirVhE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"01bff6a761b5c12eb18c2d05ec4f1a91","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"01bff6a761b5c12eb18c2d05ec4f1a91"} gateway-1 | {"time_local":"17/Jul/2024:10:54:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/f956f658-96e9-49cf-b455-6fb2330458b6/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.022","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"01bff6a761b5c12eb18c2d05ec4f1a91"} device-1 | {"level":"info","message":"POST /devices/f956f658-96e9-49cf-b455-6fb2330458b6/websocket 200 18ms","method":"POST","requestID":"01bff6a761b5c12eb18c2d05ec4f1a91","responseTime":18,"status":200,"url":"/devices/f956f658-96e9-49cf-b455-6fb2330458b6/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/f956f658-96e9-49cf-b455-6fb2330458b6' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b097e2ca4b9f6b2cf640665e6a261cc1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"b097e2ca4b9f6b2cf640665e6a261cc1","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"17/Jul/2024:10:54:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/2061e5cf-9cf6-4204-8f82-178c940d1db3/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.005","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"b097e2ca4b9f6b2cf640665e6a261cc1"} device-1 | {"level":"info","message":"OPTIONS /devices/2061e5cf-9cf6-4204-8f82-178c940d1db3/websocket 200 2ms","method":"OPTIONS","requestID":"b097e2ca4b9f6b2cf640665e6a261cc1","responseTime":2,"status":200,"url":"/devices/2061e5cf-9cf6-4204-8f82-178c940d1db3/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY3OH0.hqQFpEwz_9Su2GeyjBU8ECmI8PJNtOu_GQ7nhGCHvT8","level":"info","message":"auth send jwt","requestID":"7c030db579a6dbafd3adb5c9f8d0ff2d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7c030db579a6dbafd3adb5c9f8d0ff2d","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"7c030db579a6dbafd3adb5c9f8d0ff2d"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":242,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:38Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":242,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.19376,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:38Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/2061e5cf-9cf6-4204-8f82-178c940d1db3","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"7c030db579a6dbafd3adb5c9f8d0ff2d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/2061e5cf-9cf6-4204-8f82-178c940d1db3","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213678,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY3OH0.hqQFpEwz_9Su2GeyjBU8ECmI8PJNtOu_GQ7nhGCHvT8"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"7c030db579a6dbafd3adb5c9f8d0ff2d","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"7c030db579a6dbafd3adb5c9f8d0ff2d"} gateway-1 | {"time_local":"17/Jul/2024:10:54:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/2061e5cf-9cf6-4204-8f82-178c940d1db3/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.030","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"7c030db579a6dbafd3adb5c9f8d0ff2d"} device-1 | {"level":"info","message":"POST /devices/2061e5cf-9cf6-4204-8f82-178c940d1db3/websocket 200 24ms","method":"POST","requestID":"7c030db579a6dbafd3adb5c9f8d0ff2d","responseTime":24,"status":200,"url":"/devices/2061e5cf-9cf6-4204-8f82-178c940d1db3/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/2061e5cf-9cf6-4204-8f82-178c940d1db3' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY3OH0.hqQFpEwz_9Su2GeyjBU8ECmI8PJNtOu_GQ7nhGCHvT8","level":"info","message":"auth send jwt","requestID":"0402b4e53613c219163e3a303b994f76"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"0402b4e53613c219163e3a303b994f76","responseTime":7,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0402b4e53613c219163e3a303b994f76"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":243,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:38Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":243,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.176545,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2061e5cf-9cf6-4204-8f82-178c940d1db3","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0402b4e53613c219163e3a303b994f76","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/2061e5cf-9cf6-4204-8f82-178c940d1db3","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213678,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY3OH0.hqQFpEwz_9Su2GeyjBU8ECmI8PJNtOu_GQ7nhGCHvT8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0402b4e53613c219163e3a303b994f76","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2061e5cf-9cf6-4204-8f82-178c940d1db3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2061e5cf-9cf6-4204-8f82-178c940d1db3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:35.945150866Z"}]},"request_id":"ebbb2676-105f-4d1e-bf8d-ef004becff85","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213678.0811129} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0402b4e53613c219163e3a303b994f76","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0402b4e53613c219163e3a303b994f76"} gateway-1 | {"time_local":"17/Jul/2024:10:54:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2061e5cf-9cf6-4204-8f82-178c940d1db3? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0402b4e53613c219163e3a303b994f76"} device-1 | {"level":"info","message":"GET /devices/2061e5cf-9cf6-4204-8f82-178c940d1db3? 200 17ms","method":"GET","requestID":"0402b4e53613c219163e3a303b994f76","responseTime":17,"status":200,"url":"/devices/2061e5cf-9cf6-4204-8f82-178c940d1db3?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY3OH0.hqQFpEwz_9Su2GeyjBU8ECmI8PJNtOu_GQ7nhGCHvT8","level":"info","message":"auth send jwt","requestID":"6edaddf9da3e39fe648995c0fc7e4bc7"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6edaddf9da3e39fe648995c0fc7e4bc7","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6edaddf9da3e39fe648995c0fc7e4bc7"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":244,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:38Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":244,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.032637,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f956f658-96e9-49cf-b455-6fb2330458b6","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"6edaddf9da3e39fe648995c0fc7e4bc7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/f956f658-96e9-49cf-b455-6fb2330458b6","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213678,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY3OH0.hqQFpEwz_9Su2GeyjBU8ECmI8PJNtOu_GQ7nhGCHvT8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6edaddf9da3e39fe648995c0fc7e4bc7","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff956f658-96e9-49cf-b455-6fb2330458b6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff956f658-96e9-49cf-b455-6fb2330458b6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:35.992709519Z"}]},"request_id":"69017316-509c-406c-af47-a8e3d4c48398","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213678.1020164} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"6edaddf9da3e39fe648995c0fc7e4bc7","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6edaddf9da3e39fe648995c0fc7e4bc7"} device-1 | {"level":"info","message":"GET /devices/f956f658-96e9-49cf-b455-6fb2330458b6? 200 11ms","method":"GET","requestID":"6edaddf9da3e39fe648995c0fc7e4bc7","responseTime":11,"status":200,"url":"/devices/f956f658-96e9-49cf-b455-6fb2330458b6?"} gateway-1 | {"time_local":"17/Jul/2024:10:54:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f956f658-96e9-49cf-b455-6fb2330458b6? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6edaddf9da3e39fe648995c0fc7e4bc7"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY3OH0.hqQFpEwz_9Su2GeyjBU8ECmI8PJNtOu_GQ7nhGCHvT8","level":"info","message":"auth send jwt","requestID":"9c026241c49617e87c83c53234d92403"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"9c026241c49617e87c83c53234d92403","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"9c026241c49617e87c83c53234d92403"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":245,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:38Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":245,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.124433,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:38Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"9c026241c49617e87c83c53234d92403","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213678,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY3OH0.hqQFpEwz_9Su2GeyjBU8ECmI8PJNtOu_GQ7nhGCHvT8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"9c026241c49617e87c83c53234d92403","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/977698fb-9efc-460b-9f97-457d1925d343"},"level":"info","message":"Attempting to run experiment","requestID":"9c026241c49617e87c83c53234d92403"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/977698fb-9efc-460b-9f97-457d1925d343"},"level":"info","message":"Attempting to book experiment","requestID":"9c026241c49617e87c83c53234d92403"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/977698fb-9efc-460b-9f97-457d1925d343"},"level":"info","message":"Successfully booked experiment","requestID":"9c026241c49617e87c83c53234d92403"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f62ffcf0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f6304b10-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":246,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:38Z"} authorization-1 | {"client_addr":"127.0.0.1:60090","level":"info","msg":"Received request.","req_id":247,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:38Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":246,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.374677,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2061e5cf-9cf6-4204-8f82-178c940d1db3","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f62ffcf0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/2061e5cf-9cf6-4204-8f82-178c940d1db3","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213678,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY3OH0.hqQFpEwz_9Su2GeyjBU8ECmI8PJNtOu_GQ7nhGCHvT8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f62ffcf0-442a-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60090","level":"info","msg":"Sent response.","req_id":247,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.878547,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f956f658-96e9-49cf-b455-6fb2330458b6","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f6304b10-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/f956f658-96e9-49cf-b455-6fb2330458b6","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213678,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY3OH0.hqQFpEwz_9Su2GeyjBU8ECmI8PJNtOu_GQ7nhGCHvT8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f6304b10-442a-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2061e5cf-9cf6-4204-8f82-178c940d1db3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2061e5cf-9cf6-4204-8f82-178c940d1db3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:35.945150866Z"}]},"request_id":"7a30217e-8dfd-4cfe-aa80-a4eb2e8e31a4","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213678.1521301} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f62ffcf0-442a-11ef-8685-a1e9f27e6f28","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff956f658-96e9-49cf-b455-6fb2330458b6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff956f658-96e9-49cf-b455-6fb2330458b6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:35.992709519Z"}]},"request_id":"cbe18a94-4436-4a06-ba59-3fda447404f3","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213678.1530337} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f6304b10-442a-11ef-8685-a1e9f27e6f28","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f62ffcf0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/2061e5cf-9cf6-4204-8f82-178c940d1db3? 200 17ms","method":"GET","requestID":"f62ffcf0-442a-11ef-8685-a1e9f27e6f28","responseTime":17,"status":200,"url":"/devices/2061e5cf-9cf6-4204-8f82-178c940d1db3?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f6304b10-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/f956f658-96e9-49cf-b455-6fb2330458b6? 200 16ms","method":"GET","requestID":"f6304b10-442a-11ef-8685-a1e9f27e6f28","responseTime":16,"status":200,"url":"/devices/f956f658-96e9-49cf-b455-6fb2330458b6?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/977698fb-9efc-460b-9f97-457d1925d343"},"level":"info","message":"Setting up experiment","requestID":"9c026241c49617e87c83c53234d92403"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/977698fb-9efc-460b-9f97-457d1925d343"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"9c026241c49617e87c83c53234d92403"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/977698fb-9efc-460b-9f97-457d1925d343"},"level":"info","message":"Successfully locked booking for experiment","requestID":"9c026241c49617e87c83c53234d92403"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/977698fb-9efc-460b-9f97-457d1925d343"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"9c026241c49617e87c83c53234d92403"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/977698fb-9efc-460b-9f97-457d1925d343"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"9c026241c49617e87c83c53234d92403"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/977698fb-9efc-460b-9f97-457d1925d343"},"level":"info","message":"Attempting to update booking for experiment","requestID":"9c026241c49617e87c83c53234d92403"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/977698fb-9efc-460b-9f97-457d1925d343"},"level":"info","message":"Successfully updated booking for experiment","requestID":"9c026241c49617e87c83c53234d92403"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/977698fb-9efc-460b-9f97-457d1925d343"},"level":"info","message":"Successfully set up experiment","requestID":"9c026241c49617e87c83c53234d92403"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f6388870-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f638af80-442a-11ef-8685-a1e9f27e6f28"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/977698fb-9efc-460b-9f97-457d1925d343"},"level":"info","message":"Successfully running experiment","requestID":"9c026241c49617e87c83c53234d92403"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f638fda0-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":248,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:38Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":248,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.94938,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:38Z"} authorization-1 | {"client_addr":"127.0.0.1:60090","level":"info","msg":"Received request.","req_id":249,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2061e5cf-9cf6-4204-8f82-178c940d1db3","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f6388870-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/2061e5cf-9cf6-4204-8f82-178c940d1db3","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213678,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY3OH0.hqQFpEwz_9Su2GeyjBU8ECmI8PJNtOu_GQ7nhGCHvT8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f6388870-442a-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60090","level":"info","msg":"Sent response.","req_id":249,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.683867,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f956f658-96e9-49cf-b455-6fb2330458b6","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f638af80-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/f956f658-96e9-49cf-b455-6fb2330458b6","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213678,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY3OH0.hqQFpEwz_9Su2GeyjBU8ECmI8PJNtOu_GQ7nhGCHvT8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f638af80-442a-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":250,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:38Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2061e5cf-9cf6-4204-8f82-178c940d1db3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1c8a8d9b-7508-46cf-af50-394331f83e28","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213678.2086} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":250,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.341201,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:38Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2061e5cf-9cf6-4204-8f82-178c940d1db3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2061e5cf-9cf6-4204-8f82-178c940d1db3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:35.945150866Z"}]},"request_id":"8ffd429f-8177-4a3e-85b3-39fbd59524b8","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213678.210408} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2061e5cf-9cf6-4204-8f82-178c940d1db3","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f638fda0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2061e5cf-9cf6-4204-8f82-178c940d1db3","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"f638fda0-442a-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f6388870-442a-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff956f658-96e9-49cf-b455-6fb2330458b6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff956f658-96e9-49cf-b455-6fb2330458b6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:35.992709519Z"}]},"request_id":"1a6afbaa-64b8-4508-a9e2-cc686818235f","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213678.2115133} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f638af80-442a-11ef-8685-a1e9f27e6f28","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f6388870-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/2061e5cf-9cf6-4204-8f82-178c940d1db3? 200 21ms","method":"GET","requestID":"f6388870-442a-11ef-8685-a1e9f27e6f28","responseTime":21,"status":200,"url":"/devices/2061e5cf-9cf6-4204-8f82-178c940d1db3?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f638fda0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/2061e5cf-9cf6-4204-8f82-178c940d1db3/signaling 200 18ms","method":"POST","requestID":"f638fda0-442a-11ef-8685-a1e9f27e6f28","responseTime":18,"status":200,"url":"/devices/2061e5cf-9cf6-4204-8f82-178c940d1db3/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f638af80-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/f956f658-96e9-49cf-b455-6fb2330458b6? 200 20ms","method":"GET","requestID":"f638af80-442a-11ef-8685-a1e9f27e6f28","responseTime":20,"status":200,"url":"/devices/f956f658-96e9-49cf-b455-6fb2330458b6?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f63c31f0-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F977698fb-9efc-460b-9f97-457d1925d343#owner@http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F977698fb-9efc-460b-9f97-457d1925d343","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"95c8a4f8-ecf7-4505-b438-831f2dd313e3","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213678.225621} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0b1cd0cf-850d-45f5-ae51-3dc0dc520a63","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213678.225941} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f63cce30-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"9c026241c49617e87c83c53234d92403","responseTime":21,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff956f658-96e9-49cf-b455-6fb2330458b6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3f089193-8016-4c08-9803-e25b661a5bb5","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213678.2286294} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":251,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:38Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":251,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.514272,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:38Z"} authorization-1 | {"client_addr":"127.0.0.1:60090","level":"info","msg":"Received request.","req_id":252,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:38Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f956f658-96e9-49cf-b455-6fb2330458b6","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f63c31f0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f956f658-96e9-49cf-b455-6fb2330458b6","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"f63c31f0-442a-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2061e5cf-9cf6-4204-8f82-178c940d1db3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6399324b-33b8-42fa-b777-9a94bb9383a2","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213678.2324831} authorization-1 | {"client_addr":"127.0.0.1:60090","level":"info","msg":"Sent response.","req_id":252,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.469521,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:38Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2061e5cf-9cf6-4204-8f82-178c940d1db3","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f63cce30-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2061e5cf-9cf6-4204-8f82-178c940d1db3","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f63cce30-442a-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/977698fb-9efc-460b-9f97-457d1925d343","user":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"9c026241c49617e87c83c53234d92403"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f63c31f0-442a-11ef-8685-a1e9f27e6f28"} gateway-1 | {"time_local":"17/Jul/2024:10:54:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"781","request_time":"0.129","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9c026241c49617e87c83c53234d92403"} experiment-1 | {"level":"info","message":"POST /experiments? 201 125ms","method":"POST","requestID":"9c026241c49617e87c83c53234d92403","responseTime":125,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"POST /devices/f956f658-96e9-49cf-b455-6fb2330458b6/signaling 200 13ms","method":"POST","requestID":"f63c31f0-442a-11ef-8685-a1e9f27e6f28","responseTime":13,"status":200,"url":"/devices/f956f658-96e9-49cf-b455-6fb2330458b6/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f63cce30-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/2061e5cf-9cf6-4204-8f82-178c940d1db3/signaling 200 10ms","method":"POST","requestID":"f63cce30-442a-11ef-8685-a1e9f27e6f28","responseTime":10,"status":200,"url":"/devices/2061e5cf-9cf6-4204-8f82-178c940d1db3/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f63ea2f0-442a-11ef-8685-a1e9f27e6f28"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY3OH0.hqQFpEwz_9Su2GeyjBU8ECmI8PJNtOu_GQ7nhGCHvT8","level":"info","message":"auth send jwt","requestID":"bce84963137408823dad746f368696b8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"bce84963137408823dad746f368696b8","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bce84963137408823dad746f368696b8"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":253,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:38Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff956f658-96e9-49cf-b455-6fb2330458b6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e810683d-c3e1-4a29-b9cd-25ccd3e1781d","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213678.2447746} authorization-1 | {"client_addr":"127.0.0.1:60090","level":"info","msg":"Received request.","req_id":254,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:38Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":253,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.537361,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:38Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f956f658-96e9-49cf-b455-6fb2330458b6","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f63ea2f0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f956f658-96e9-49cf-b455-6fb2330458b6","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f63ea2f0-442a-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60090","level":"info","msg":"Sent response.","req_id":254,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.79499,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2061e5cf-9cf6-4204-8f82-178c940d1db3","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"bce84963137408823dad746f368696b8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/2061e5cf-9cf6-4204-8f82-178c940d1db3","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213678,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY3OH0.hqQFpEwz_9Su2GeyjBU8ECmI8PJNtOu_GQ7nhGCHvT8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"bce84963137408823dad746f368696b8","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f63ea2f0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/f956f658-96e9-49cf-b455-6fb2330458b6/signaling 200 11ms","method":"POST","requestID":"f63ea2f0-442a-11ef-8685-a1e9f27e6f28","responseTime":11,"status":200,"url":"/devices/f956f658-96e9-49cf-b455-6fb2330458b6/signaling"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2061e5cf-9cf6-4204-8f82-178c940d1db3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2061e5cf-9cf6-4204-8f82-178c940d1db3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:35.945150866Z"}]},"request_id":"b85b43e2-a2bc-4569-8721-cf7f00942212","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213678.2510264} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/977698fb-9efc-460b-9f97-457d1925d343"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"9c026241c49617e87c83c53234d92403"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/977698fb-9efc-460b-9f97-457d1925d343"},"level":"info","message":"Building connection plan","requestID":"9c026241c49617e87c83c53234d92403"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"066d1cbb-8d50-44f3-8b3c-119a93395f14"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"54dc4abe-3fac-4068-a01c-5a74ee65d00e"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/file","uuid":"4a39d65c-d8b5-40ac-a513-b5faf23e164e"}]},"level":"info","message":"Built pairwise service configurations","requestID":"9c026241c49617e87c83c53234d92403"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/2061e5cf-9cf6-4204-8f82-178c940d1db3"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/f956f658-96e9-49cf-b455-6fb2330458b6"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"9c026241c49617e87c83c53234d92403"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"bce84963137408823dad746f368696b8","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"f640c5d0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bce84963137408823dad746f368696b8"} gateway-1 | {"time_local":"17/Jul/2024:10:54:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2061e5cf-9cf6-4204-8f82-178c940d1db3? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bce84963137408823dad746f368696b8"} device-1 | {"level":"info","message":"GET /devices/2061e5cf-9cf6-4204-8f82-178c940d1db3? 200 14ms","method":"GET","requestID":"bce84963137408823dad746f368696b8","responseTime":14,"status":200,"url":"/devices/2061e5cf-9cf6-4204-8f82-178c940d1db3?"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":255,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:38Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":255,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.992034,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:38Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f640c5d0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213678,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY3OH0.hqQFpEwz_9Su2GeyjBU8ECmI8PJNtOu_GQ7nhGCHvT8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f640c5d0-442a-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY3OH0.hqQFpEwz_9Su2GeyjBU8ECmI8PJNtOu_GQ7nhGCHvT8","level":"info","message":"auth send jwt","requestID":"3d42b8478cb6bd76c75ef6ba79c847cf"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"3d42b8478cb6bd76c75ef6ba79c847cf","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3d42b8478cb6bd76c75ef6ba79c847cf"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":256,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:38Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":256,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.666853,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f956f658-96e9-49cf-b455-6fb2330458b6","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"3d42b8478cb6bd76c75ef6ba79c847cf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/f956f658-96e9-49cf-b455-6fb2330458b6","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213678,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY3OH0.hqQFpEwz_9Su2GeyjBU8ECmI8PJNtOu_GQ7nhGCHvT8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"3d42b8478cb6bd76c75ef6ba79c847cf","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"0070d7e8-ab6e-4111-9359-b2f518f83ada","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213678.269171} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0629ef3f-3662-459d-8c77-1facabeee3e2","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213678.269445} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff956f658-96e9-49cf-b455-6fb2330458b6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff956f658-96e9-49cf-b455-6fb2330458b6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:35.992709519Z"}]},"request_id":"f008a4c0-3dba-40e8-a8d3-bf40435a4cac","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213678.2700853} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"f640c5d0-442a-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3d42b8478cb6bd76c75ef6ba79c847cf","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3d42b8478cb6bd76c75ef6ba79c847cf"} gateway-1 | {"time_local":"17/Jul/2024:10:54:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f956f658-96e9-49cf-b455-6fb2330458b6? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3d42b8478cb6bd76c75ef6ba79c847cf"} device-1 | {"level":"info","message":"GET /devices/f956f658-96e9-49cf-b455-6fb2330458b6? 200 13ms","method":"GET","requestID":"3d42b8478cb6bd76c75ef6ba79c847cf","responseTime":13,"status":200,"url":"/devices/f956f658-96e9-49cf-b455-6fb2330458b6?"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"f640c5d0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"f640c5d0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/e6fc4dae-0fc9-4adb-9bd5-a704c02fd425'","requestID":"f640c5d0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/e6fc4dae-0fc9-4adb-9bd5-a704c02fd425'","requestID":"f640c5d0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"f640c5d0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 31ms","method":"POST","requestID":"f640c5d0-442a-11ef-8685-a1e9f27e6f28","responseTime":31,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"f640c5d0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/e6fc4dae-0fc9-4adb-9bd5-a704c02fd425","device":"2061e5cf-9cf6-4204-8f82-178c940d1db3","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}],"tiebreaker":false} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/977698fb-9efc-460b-9f97-457d1925d343"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"9c026241c49617e87c83c53234d92403"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f649ed90-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":257,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:38Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2061e5cf-9cf6-4204-8f82-178c940d1db3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9c8f1184-5593-48c3-abb1-8f6c66800111","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213678.3183146} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":257,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.518549,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:38Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2061e5cf-9cf6-4204-8f82-178c940d1db3","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f649ed90-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2061e5cf-9cf6-4204-8f82-178c940d1db3","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f649ed90-442a-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f649ed90-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/2061e5cf-9cf6-4204-8f82-178c940d1db3/signaling 200 9ms","method":"POST","requestID":"f649ed90-442a-11ef-8685-a1e9f27e6f28","responseTime":9,"status":200,"url":"/devices/2061e5cf-9cf6-4204-8f82-178c940d1db3/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f64bc250-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":258,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:38Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff956f658-96e9-49cf-b455-6fb2330458b6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cb5b8602-61b7-4c6c-be79-3b361778cc0c","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213678.331097} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":258,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.533026,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:38Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f956f658-96e9-49cf-b455-6fb2330458b6","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f64bc250-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f956f658-96e9-49cf-b455-6fb2330458b6","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f64bc250-442a-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f64bc250-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/f956f658-96e9-49cf-b455-6fb2330458b6/signaling 200 10ms","method":"POST","requestID":"f64bc250-442a-11ef-8685-a1e9f27e6f28","responseTime":10,"status":200,"url":"/devices/f956f658-96e9-49cf-b455-6fb2330458b6/signaling"} device-1 | {"device":"2061e5cf-9cf6-4204-8f82-178c940d1db3","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"2061e5cf-9cf6-4204-8f82-178c940d1db3","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"f956f658-96e9-49cf-b455-6fb2330458b6","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"e6fc4dae-0fc9-4adb-9bd5-a704c02fd425","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 7284624424435674605 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=msid-semantic: WMS\r\nm=application 9 DTLS/SCTP 5000\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:uBa+\r\na=ice-pwd:AdyzWFB/O0aTxDPMJ9Uzc4ln\r\na=ice-options:trickle\r\na=fingerprint:sha-256 FE:CD:EE:A5:8F:FE:91:83:4A:0F:97:DD:D2:75:F6:40:FC:B3:34:F0:44:AD:31:64:B7:B5:2A:D8:F3:F8:3D:D7\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"2061e5cf-9cf6-4204-8f82-178c940d1db3","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:181647241 1 udp 2113937151 b70b6676-d045-4b5a-9445-74c7a6cc53fd.local 54005 typ host generation 0 ufrag uBa+ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"2061e5cf-9cf6-4204-8f82-178c940d1db3","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"2061e5cf-9cf6-4204-8f82-178c940d1db3","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/e6fc4dae-0fc9-4adb-9bd5-a704c02fd425' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"e6fc4dae-0fc9-4adb-9bd5-a704c02fd425","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"f956f658-96e9-49cf-b455-6fb2330458b6","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"f956f658-96e9-49cf-b455-6fb2330458b6","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"f956f658-96e9-49cf-b455-6fb2330458b6","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"content":{"candidate":"candidate:2583172762 1 udp 1677729535 141.24.211.56 54005 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag uBa+ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"2061e5cf-9cf6-4204-8f82-178c940d1db3","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3bd4f8a2c987df5c3fe32fed29bcb9bd","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"3bd4f8a2c987df5c3fe32fed29bcb9bd","responseTime":2,"status":200,"url":"/auth"} device-1 | {"device":"2061e5cf-9cf6-4204-8f82-178c940d1db3","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connecting","url":"http://localhost/devices/2061e5cf-9cf6-4204-8f82-178c940d1db3"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"new","url":"http://localhost/devices/f956f658-96e9-49cf-b455-6fb2330458b6"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/e6fc4dae-0fc9-4adb-9bd5-a704c02fd425"}}},"level":"info","message":"received a callback","requestID":"3bd4f8a2c987df5c3fe32fed29bcb9bd"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/2061e5cf-9cf6-4204-8f82-178c940d1db3'"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"3bd4f8a2c987df5c3fe32fed29bcb9bd","responseTime":7,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:54:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.012","http_referrer":"","http_user_agent":"node-fetch","requestID":"3bd4f8a2c987df5c3fe32fed29bcb9bd"} device-1 | {"data":{"peerconnection":"e6fc4dae-0fc9-4adb-9bd5-a704c02fd425","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"f956f658-96e9-49cf-b455-6fb2330458b6","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"2061e5cf-9cf6-4204-8f82-178c940d1db3","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"f956f658-96e9-49cf-b455-6fb2330458b6","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"e6fc4dae-0fc9-4adb-9bd5-a704c02fd425","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"2061e5cf-9cf6-4204-8f82-178c940d1db3","deviceName":"JS Device 1","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/e6fc4dae-0fc9-4adb-9bd5-a704c02fd425' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"e6fc4dae-0fc9-4adb-9bd5-a704c02fd425","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"00d512fb36fb2117ce16ccf3fec63677","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"00d512fb36fb2117ce16ccf3fec63677","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/2061e5cf-9cf6-4204-8f82-178c940d1db3"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/f956f658-96e9-49cf-b455-6fb2330458b6"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/e6fc4dae-0fc9-4adb-9bd5-a704c02fd425"}}},"level":"info","message":"received a callback","requestID":"00d512fb36fb2117ce16ccf3fec63677"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"f7950b30-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":259,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:40Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fe6fc4dae-0fc9-4adb-9bd5-a704c02fd425","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"93cd6028-1b65-456e-8b18-1ec8c35fa80f","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213680.4899924} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":259,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.293725,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/e6fc4dae-0fc9-4adb-9bd5-a704c02fd425","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f7950b30-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/e6fc4dae-0fc9-4adb-9bd5-a704c02fd425","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f7950b30-442a-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"f7950b30-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /peerconnections/e6fc4dae-0fc9-4adb-9bd5-a704c02fd425 200 11ms","method":"GET","requestID":"f7950b30-442a-11ef-8685-a1e9f27e6f28","responseTime":11,"status":200,"url":"/peerconnections/e6fc4dae-0fc9-4adb-9bd5-a704c02fd425"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 46ms","method":"POST","requestID":"00d512fb36fb2117ce16ccf3fec63677","responseTime":46,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:54:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch","requestID":"00d512fb36fb2117ce16ccf3fec63677"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f79a6260-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":260,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:40Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2061e5cf-9cf6-4204-8f82-178c940d1db3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a26cb955-2720-416a-a5e5-8283b4b4fc2b","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213680.5239196} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":260,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.682925,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2061e5cf-9cf6-4204-8f82-178c940d1db3","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f79a6260-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2061e5cf-9cf6-4204-8f82-178c940d1db3","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f79a6260-442a-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f79a6260-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/2061e5cf-9cf6-4204-8f82-178c940d1db3/signaling 200 11ms","method":"POST","requestID":"f79a6260-442a-11ef-8685-a1e9f27e6f28","responseTime":11,"status":200,"url":"/devices/2061e5cf-9cf6-4204-8f82-178c940d1db3/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f79c8540-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":261,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:40Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff956f658-96e9-49cf-b455-6fb2330458b6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2dbbc155-c022-4b9c-b3e3-7c2380eed20d","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213680.5373113} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":261,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.292785,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f956f658-96e9-49cf-b455-6fb2330458b6","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f79c8540-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f956f658-96e9-49cf-b455-6fb2330458b6","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f79c8540-442a-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f79c8540-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/f956f658-96e9-49cf-b455-6fb2330458b6/signaling 200 10ms","method":"POST","requestID":"f79c8540-442a-11ef-8685-a1e9f27e6f28","responseTime":10,"status":200,"url":"/devices/f956f658-96e9-49cf-b455-6fb2330458b6/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4MH0.ac-A3HhxqJy-SCLvyV-WVZygs2HDE2XbHyBLMpfQ_Rk","level":"info","message":"auth send jwt","requestID":"0d979b579a037e8fdffc436f32f77d7f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0d979b579a037e8fdffc436f32f77d7f","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/977698fb-9efc-460b-9f97-457d1925d343","requestID":"0d979b579a037e8fdffc436f32f77d7f"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":262,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:40Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":262,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.212457,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/977698fb-9efc-460b-9f97-457d1925d343","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0d979b579a037e8fdffc436f32f77d7f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:http://localhost/experiments/977698fb-9efc-460b-9f97-457d1925d343","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213680,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4MH0.ac-A3HhxqJy-SCLvyV-WVZygs2HDE2XbHyBLMpfQ_Rk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0d979b579a037e8fdffc436f32f77d7f","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/977698fb-9efc-460b-9f97-457d1925d343","requestID":"0d979b579a037e8fdffc436f32f77d7f"} gateway-1 | {"time_local":"17/Jul/2024:10:54:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/977698fb-9efc-460b-9f97-457d1925d343 HTTP/1.1","status": "200","body_bytes_sent":"854","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0d979b579a037e8fdffc436f32f77d7f"} experiment-1 | {"level":"info","message":"GET /experiments/977698fb-9efc-460b-9f97-457d1925d343 200 16ms","method":"GET","requestID":"0d979b579a037e8fdffc436f32f77d7f","responseTime":16,"status":200,"url":"/experiments/977698fb-9efc-460b-9f97-457d1925d343"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4MH0.ac-A3HhxqJy-SCLvyV-WVZygs2HDE2XbHyBLMpfQ_Rk","level":"info","message":"auth send jwt","requestID":"ebffb6c9492b22a0879e160e4565e3ef"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ebffb6c9492b22a0879e160e4565e3ef","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/977698fb-9efc-460b-9f97-457d1925d343","requestID":"ebffb6c9492b22a0879e160e4565e3ef"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":263,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:40Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":263,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.368853,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:40Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/977698fb-9efc-460b-9f97-457d1925d343","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"ebffb6c9492b22a0879e160e4565e3ef","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:http://localhost/experiments/977698fb-9efc-460b-9f97-457d1925d343","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213680,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4MH0.ac-A3HhxqJy-SCLvyV-WVZygs2HDE2XbHyBLMpfQ_Rk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ebffb6c9492b22a0879e160e4565e3ef","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/977698fb-9efc-460b-9f97-457d1925d343"},"level":"info","message":"Attempting to finish experiment","requestID":"ebffb6c9492b22a0879e160e4565e3ef"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"f7c542f0-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":264,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:40Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":264,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.233785,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:40Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/e6fc4dae-0fc9-4adb-9bd5-a704c02fd425","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f7c542f0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"peerconnection:http://localhost/peerconnections/e6fc4dae-0fc9-4adb-9bd5-a704c02fd425","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213680,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4MH0.ac-A3HhxqJy-SCLvyV-WVZygs2HDE2XbHyBLMpfQ_Rk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f7c542f0-442a-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/e6fc4dae-0fc9-4adb-9bd5-a704c02fd425","device":"2061e5cf-9cf6-4204-8f82-178c940d1db3","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"f956f658-96e9-49cf-b455-6fb2330458b6","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"f956f658-96e9-49cf-b455-6fb2330458b6","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"f956f658-96e9-49cf-b455-6fb2330458b6","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/e6fc4dae-0fc9-4adb-9bd5-a704c02fd425' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/e6fc4dae-0fc9-4adb-9bd5-a704c02fd425' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"e6fc4dae-0fc9-4adb-9bd5-a704c02fd425","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0e7e1a5d373f0d2446fde8a9163d4ca7","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"0e7e1a5d373f0d2446fde8a9163d4ca7","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"be925493f4464000d40e8697745a2651","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/2061e5cf-9cf6-4204-8f82-178c940d1db3"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/f956f658-96e9-49cf-b455-6fb2330458b6"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/e6fc4dae-0fc9-4adb-9bd5-a704c02fd425"}}},"level":"info","message":"received a callback","requestID":"0e7e1a5d373f0d2446fde8a9163d4ca7"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fe6fc4dae-0fc9-4adb-9bd5-a704c02fd425': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fe6fc4dae-0fc9-4adb-9bd5-a704c02fd425","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]},"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":null},"raw_response":{},"request_id":"0017d0e3-c0d5-4634-812c-cd3c38855cd2","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213680.8231566} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"be925493f4464000d40e8697745a2651","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/2061e5cf-9cf6-4204-8f82-178c940d1db3"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/f956f658-96e9-49cf-b455-6fb2330458b6"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/e6fc4dae-0fc9-4adb-9bd5-a704c02fd425"}}},"level":"info","message":"received a callback","requestID":"be925493f4464000d40e8697745a2651"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"defaeaf7-461e-4e62-bd10-ce63c18d026c","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213680.8235598} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"f7c542f0-442a-11ef-8685-a1e9f27e6f28","responseTime":10,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"e6fc4dae-0fc9-4adb-9bd5-a704c02fd425","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"f7c542f0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"DELETE /peerconnections/e6fc4dae-0fc9-4adb-9bd5-a704c02fd425 204 44ms","method":"DELETE","requestID":"f7c542f0-442a-11ef-8685-a1e9f27e6f28","responseTime":44,"status":204,"url":"/peerconnections/e6fc4dae-0fc9-4adb-9bd5-a704c02fd425"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/977698fb-9efc-460b-9f97-457d1925d343"},"level":"info","message":"Successfully finished experiment","requestID":"ebffb6c9492b22a0879e160e4565e3ef"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f7cf5510-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":265,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:40Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2061e5cf-9cf6-4204-8f82-178c940d1db3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"84631acc-915b-459d-b9b9-626a7e0ab3fa","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213680.873632} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":265,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.308115,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2061e5cf-9cf6-4204-8f82-178c940d1db3","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f7cf5510-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2061e5cf-9cf6-4204-8f82-178c940d1db3","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"f7cf5510-442a-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f7cf5510-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/2061e5cf-9cf6-4204-8f82-178c940d1db3/signaling 200 16ms","method":"POST","requestID":"f7cf5510-442a-11ef-8685-a1e9f27e6f28","responseTime":16,"status":200,"url":"/devices/2061e5cf-9cf6-4204-8f82-178c940d1db3/signaling"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F977698fb-9efc-460b-9f97-457d1925d343': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F977698fb-9efc-460b-9f97-457d1925d343","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]},"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":null},"raw_response":{},"request_id":"f51d2e31-a125-479b-9478-ba0fba6825af","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213680.8821268} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f20d7eb6-d071-4b71-868a-dd99e5634e2c","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213680.8824863} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f7d23b40-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"ebffb6c9492b22a0879e160e4565e3ef","responseTime":22,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":266,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:40Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff956f658-96e9-49cf-b455-6fb2330458b6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0c89fb16-2fd8-4a56-9c7b-68183448990a","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213680.890695} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":266,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.395709,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f956f658-96e9-49cf-b455-6fb2330458b6","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f7d23b40-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f956f658-96e9-49cf-b455-6fb2330458b6","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"f7d23b40-442a-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f7d23b40-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/f956f658-96e9-49cf-b455-6fb2330458b6/signaling 200 13ms","method":"POST","requestID":"f7d23b40-442a-11ef-8685-a1e9f27e6f28","responseTime":13,"status":200,"url":"/devices/f956f658-96e9-49cf-b455-6fb2330458b6/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/977698fb-9efc-460b-9f97-457d1925d343","requestID":"ebffb6c9492b22a0879e160e4565e3ef"} gateway-1 | {"time_local":"17/Jul/2024:10:54:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/977698fb-9efc-460b-9f97-457d1925d343 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.178","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ebffb6c9492b22a0879e160e4565e3ef"} gateway-1 | {"time_local":"17/Jul/2024:10:54:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2581","request_time":"4.411","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"4f8e47daac7ca88226d6343241d72799"} experiment-1 | {"level":"info","message":"DELETE /experiments/977698fb-9efc-460b-9f97-457d1925d343 204 174ms","method":"DELETE","requestID":"ebffb6c9492b22a0879e160e4565e3ef","responseTime":174,"status":204,"url":"/experiments/977698fb-9efc-460b-9f97-457d1925d343"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 136ms","method":"POST","requestID":"0e7e1a5d373f0d2446fde8a9163d4ca7","responseTime":136,"status":200,"url":"/callbacks/experiment"} device-1 | {"level":"info","message":"postDevices called","requestID":"bca57b052886e1f35ca01be8b129d7fb"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4MH0.ac-A3HhxqJy-SCLvyV-WVZygs2HDE2XbHyBLMpfQ_Rk","level":"info","message":"auth send jwt","requestID":"bca57b052886e1f35ca01be8b129d7fb"} gateway-1 | {"time_local":"17/Jul/2024:10:54:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.140","http_referrer":"","http_user_agent":"node-fetch","requestID":"0e7e1a5d373f0d2446fde8a9163d4ca7"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 136ms","method":"POST","requestID":"be925493f4464000d40e8697745a2651","responseTime":136,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"bca57b052886e1f35ca01be8b129d7fb","responseTime":3,"status":200,"url":"/auth"} gateway-1 | {"time_local":"17/Jul/2024:10:54:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.140","http_referrer":"","http_user_agent":"node-fetch","requestID":"be925493f4464000d40e8697745a2651"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":267,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:40Z"} gateway-1 | {"time_local":"17/Jul/2024:10:54:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2490","request_time":"2.924","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"99578078058e8fa1a0c608ce202a91fb"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":267,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.044423,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:40Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"bca57b052886e1f35ca01be8b129d7fb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213680,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4MH0.ac-A3HhxqJy-SCLvyV-WVZygs2HDE2XbHyBLMpfQ_Rk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"bca57b052886e1f35ca01be8b129d7fb","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/f956f658-96e9-49cf-b455-6fb2330458b6' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe6556963-6d5f-49a8-b779-47aaf0c1319a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"a8341b68-3811-40e9-adcd-681903081446","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213680.9854705} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"bca57b052886e1f35ca01be8b129d7fb","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/2061e5cf-9cf6-4204-8f82-178c940d1db3' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"78538b96-1616-4a03-a71e-dabb72afcad2","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213680.990768} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"bca57b052886e1f35ca01be8b129d7fb","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe6556963-6d5f-49a8-b779-47aaf0c1319a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"fe8f9a52-f347-4078-bd00-cedbca76e21f","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213681.006998} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c3e014df-80c4-4809-bda7-8e33fc009fa3","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213681.0071032} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"bca57b052886e1f35ca01be8b129d7fb","responseTime":18,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe6556963-6d5f-49a8-b779-47aaf0c1319a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe6556963-6d5f-49a8-b779-47aaf0c1319a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:41.006975792Z"}]},"request_id":"2d144c0a-a83c-4a04-905e-eb22a7a1a5db","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213681.011651} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"bca57b052886e1f35ca01be8b129d7fb","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"bca57b052886e1f35ca01be8b129d7fb"} gateway-1 | {"time_local":"17/Jul/2024:10:54:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.056","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bca57b052886e1f35ca01be8b129d7fb"} device-1 | {"level":"info","message":"POST /devices? 201 52ms","method":"POST","requestID":"bca57b052886e1f35ca01be8b129d7fb","responseTime":52,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4MX0.TCVwDjWw6EbdDaQ9RbWrrQtjVYzxwqbmpBCJPXsBbek","level":"info","message":"auth send jwt","requestID":"efdc8047a2d909176753368af8ec98f7"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"efdc8047a2d909176753368af8ec98f7","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"efdc8047a2d909176753368af8ec98f7"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":268,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:41Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":268,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.782527,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:41Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"efdc8047a2d909176753368af8ec98f7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213681,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4MX0.TCVwDjWw6EbdDaQ9RbWrrQtjVYzxwqbmpBCJPXsBbek"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"efdc8047a2d909176753368af8ec98f7","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdd26beb0-c4f6-47dc-9cc9-3908f88ce445","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"9f782daa-d12f-423e-99d6-72891569a7ec","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213681.03626} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"efdc8047a2d909176753368af8ec98f7","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7aff26b3-63d1-4d19-a915-7b3d09d565db","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213681.0413942} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"efdc8047a2d909176753368af8ec98f7","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdd26beb0-c4f6-47dc-9cc9-3908f88ce445","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"b7d5ed10-9feb-4751-9281-210911118492","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213681.0514982} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"be127797-510b-42ed-97a8-8ed6d334a60a","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213681.0516696} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"efdc8047a2d909176753368af8ec98f7","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdd26beb0-c4f6-47dc-9cc9-3908f88ce445","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdd26beb0-c4f6-47dc-9cc9-3908f88ce445","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:41.051478349Z"}]},"request_id":"b6b43846-e63a-43b1-9b4d-1309c207e52c","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213681.0562327} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"efdc8047a2d909176753368af8ec98f7","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"efdc8047a2d909176753368af8ec98f7"} device-1 | {"level":"info","message":"POST /devices? 201 39ms","method":"POST","requestID":"efdc8047a2d909176753368af8ec98f7","responseTime":39,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"17/Jul/2024:10:54:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.043","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"efdc8047a2d909176753368af8ec98f7"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4MX0.TCVwDjWw6EbdDaQ9RbWrrQtjVYzxwqbmpBCJPXsBbek","level":"info","message":"auth send jwt","requestID":"113f83051e6f6f43644162078856789e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"113f83051e6f6f43644162078856789e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"113f83051e6f6f43644162078856789e"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":269,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:41Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":269,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.114392,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:41Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e6556963-6d5f-49a8-b779-47aaf0c1319a","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"113f83051e6f6f43644162078856789e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/e6556963-6d5f-49a8-b779-47aaf0c1319a","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213681,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4MX0.TCVwDjWw6EbdDaQ9RbWrrQtjVYzxwqbmpBCJPXsBbek"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"113f83051e6f6f43644162078856789e","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe6556963-6d5f-49a8-b779-47aaf0c1319a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe6556963-6d5f-49a8-b779-47aaf0c1319a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:41.006975792Z"}]},"request_id":"5fb6367e-d271-4234-ab01-bdd655d22535","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213681.5489016} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"113f83051e6f6f43644162078856789e","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5f1c1a1d-cf70-4a4f-8180-bac0a3a655df","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213681.5548081} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"113f83051e6f6f43644162078856789e","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe6556963-6d5f-49a8-b779-47aaf0c1319a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe6556963-6d5f-49a8-b779-47aaf0c1319a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:41.006975792Z"}]},"request_id":"0f9a5fee-a902-469e-aed5-fa80f13c2a19","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213681.5682375} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"113f83051e6f6f43644162078856789e","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"113f83051e6f6f43644162078856789e"} gateway-1 | {"time_local":"17/Jul/2024:10:54:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/e6556963-6d5f-49a8-b779-47aaf0c1319a HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.045","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"113f83051e6f6f43644162078856789e"} device-1 | {"level":"info","message":"PATCH /devices/e6556963-6d5f-49a8-b779-47aaf0c1319a 200 38ms","method":"PATCH","requestID":"113f83051e6f6f43644162078856789e","responseTime":38,"status":200,"url":"/devices/e6556963-6d5f-49a8-b779-47aaf0c1319a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4MX0.TCVwDjWw6EbdDaQ9RbWrrQtjVYzxwqbmpBCJPXsBbek","level":"info","message":"auth send jwt","requestID":"2280f8080a0aaf3ad0db7430442470cd"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2280f8080a0aaf3ad0db7430442470cd","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"2280f8080a0aaf3ad0db7430442470cd"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":270,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:41Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":270,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.212526,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:41Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e6556963-6d5f-49a8-b779-47aaf0c1319a","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"2280f8080a0aaf3ad0db7430442470cd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/e6556963-6d5f-49a8-b779-47aaf0c1319a","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213681,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4MX0.TCVwDjWw6EbdDaQ9RbWrrQtjVYzxwqbmpBCJPXsBbek"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2280f8080a0aaf3ad0db7430442470cd","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"2280f8080a0aaf3ad0db7430442470cd"} gateway-1 | {"time_local":"17/Jul/2024:10:54:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/e6556963-6d5f-49a8-b779-47aaf0c1319a/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.028","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"2280f8080a0aaf3ad0db7430442470cd"} device-1 | {"level":"info","message":"POST /devices/e6556963-6d5f-49a8-b779-47aaf0c1319a/websocket 200 23ms","method":"POST","requestID":"2280f8080a0aaf3ad0db7430442470cd","responseTime":23,"status":200,"url":"/devices/e6556963-6d5f-49a8-b779-47aaf0c1319a/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/e6556963-6d5f-49a8-b779-47aaf0c1319a' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b7e5d7f0f68474887e6348b837f9932e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"b7e5d7f0f68474887e6348b837f9932e","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"17/Jul/2024:10:54:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/dd26beb0-c4f6-47dc-9cc9-3908f88ce445/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"b7e5d7f0f68474887e6348b837f9932e"} device-1 | {"level":"info","message":"OPTIONS /devices/dd26beb0-c4f6-47dc-9cc9-3908f88ce445/websocket 200 2ms","method":"OPTIONS","requestID":"b7e5d7f0f68474887e6348b837f9932e","responseTime":2,"status":200,"url":"/devices/dd26beb0-c4f6-47dc-9cc9-3908f88ce445/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4M30.fUS2eIn4nMzdJpSdY1IZpqjKE3wSwFNQIdhLzuOMDMc","level":"info","message":"auth send jwt","requestID":"7c5c2ab8aa483cfbe1a2094ff2e4399b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7c5c2ab8aa483cfbe1a2094ff2e4399b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"7c5c2ab8aa483cfbe1a2094ff2e4399b"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":271,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:43Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":271,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.357657,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:43Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/dd26beb0-c4f6-47dc-9cc9-3908f88ce445","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"7c5c2ab8aa483cfbe1a2094ff2e4399b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/dd26beb0-c4f6-47dc-9cc9-3908f88ce445","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213683,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4M30.fUS2eIn4nMzdJpSdY1IZpqjKE3wSwFNQIdhLzuOMDMc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7c5c2ab8aa483cfbe1a2094ff2e4399b","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"7c5c2ab8aa483cfbe1a2094ff2e4399b"} device-1 | {"level":"info","message":"POST /devices/dd26beb0-c4f6-47dc-9cc9-3908f88ce445/websocket 200 27ms","method":"POST","requestID":"7c5c2ab8aa483cfbe1a2094ff2e4399b","responseTime":27,"status":200,"url":"/devices/dd26beb0-c4f6-47dc-9cc9-3908f88ce445/websocket"} gateway-1 | {"time_local":"17/Jul/2024:10:54:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/dd26beb0-c4f6-47dc-9cc9-3908f88ce445/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.033","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"7c5c2ab8aa483cfbe1a2094ff2e4399b"} device-1 | {"level":"info","message":"device 'http://localhost/devices/dd26beb0-c4f6-47dc-9cc9-3908f88ce445' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4M30.fUS2eIn4nMzdJpSdY1IZpqjKE3wSwFNQIdhLzuOMDMc","level":"info","message":"auth send jwt","requestID":"5fbb7457ba8981f25b0f6af091f5b84d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"5fbb7457ba8981f25b0f6af091f5b84d","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5fbb7457ba8981f25b0f6af091f5b84d"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":272,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:43Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":272,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.677627,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e6556963-6d5f-49a8-b779-47aaf0c1319a","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"5fbb7457ba8981f25b0f6af091f5b84d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/e6556963-6d5f-49a8-b779-47aaf0c1319a","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213683,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4M30.fUS2eIn4nMzdJpSdY1IZpqjKE3wSwFNQIdhLzuOMDMc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5fbb7457ba8981f25b0f6af091f5b84d","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe6556963-6d5f-49a8-b779-47aaf0c1319a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe6556963-6d5f-49a8-b779-47aaf0c1319a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:41.006975792Z"}]},"request_id":"e4b264c3-daa6-4864-9712-32630bb7b356","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213683.1354306} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"5fbb7457ba8981f25b0f6af091f5b84d","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5fbb7457ba8981f25b0f6af091f5b84d"} gateway-1 | {"time_local":"17/Jul/2024:10:54:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e6556963-6d5f-49a8-b779-47aaf0c1319a? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5fbb7457ba8981f25b0f6af091f5b84d"} device-1 | {"level":"info","message":"GET /devices/e6556963-6d5f-49a8-b779-47aaf0c1319a? 200 19ms","method":"GET","requestID":"5fbb7457ba8981f25b0f6af091f5b84d","responseTime":19,"status":200,"url":"/devices/e6556963-6d5f-49a8-b779-47aaf0c1319a?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4M30.fUS2eIn4nMzdJpSdY1IZpqjKE3wSwFNQIdhLzuOMDMc","level":"info","message":"auth send jwt","requestID":"4a8379e34cd55cc930b3b87356d77552"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4a8379e34cd55cc930b3b87356d77552","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4a8379e34cd55cc930b3b87356d77552"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":273,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:43Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":273,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.175744,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/dd26beb0-c4f6-47dc-9cc9-3908f88ce445","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"4a8379e34cd55cc930b3b87356d77552","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/dd26beb0-c4f6-47dc-9cc9-3908f88ce445","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213683,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4M30.fUS2eIn4nMzdJpSdY1IZpqjKE3wSwFNQIdhLzuOMDMc"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"4a8379e34cd55cc930b3b87356d77552","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdd26beb0-c4f6-47dc-9cc9-3908f88ce445","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdd26beb0-c4f6-47dc-9cc9-3908f88ce445","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:41.051478349Z"}]},"request_id":"c3d22c31-9efd-4846-ad2f-edcfe02759d9","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213683.1615431} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"4a8379e34cd55cc930b3b87356d77552","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4a8379e34cd55cc930b3b87356d77552"} gateway-1 | {"time_local":"17/Jul/2024:10:54:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/dd26beb0-c4f6-47dc-9cc9-3908f88ce445? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4a8379e34cd55cc930b3b87356d77552"} device-1 | {"level":"info","message":"GET /devices/dd26beb0-c4f6-47dc-9cc9-3908f88ce445? 200 21ms","method":"GET","requestID":"4a8379e34cd55cc930b3b87356d77552","responseTime":21,"status":200,"url":"/devices/dd26beb0-c4f6-47dc-9cc9-3908f88ce445?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4M30.fUS2eIn4nMzdJpSdY1IZpqjKE3wSwFNQIdhLzuOMDMc","level":"info","message":"auth send jwt","requestID":"c89963ed986e94a601d51c9544b6d00b"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"c89963ed986e94a601d51c9544b6d00b","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"c89963ed986e94a601d51c9544b6d00b"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":274,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:43Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":274,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.203522,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:43Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"c89963ed986e94a601d51c9544b6d00b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213683,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4M30.fUS2eIn4nMzdJpSdY1IZpqjKE3wSwFNQIdhLzuOMDMc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c89963ed986e94a601d51c9544b6d00b","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/eb936b3a-e94a-4818-b510-2bb34c3883e7"},"level":"info","message":"Attempting to run experiment","requestID":"c89963ed986e94a601d51c9544b6d00b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/eb936b3a-e94a-4818-b510-2bb34c3883e7"},"level":"info","message":"Attempting to book experiment","requestID":"c89963ed986e94a601d51c9544b6d00b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/eb936b3a-e94a-4818-b510-2bb34c3883e7"},"level":"info","message":"Successfully booked experiment","requestID":"c89963ed986e94a601d51c9544b6d00b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f936ad40-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f936fb60-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":275,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:43Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":275,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.872671,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e6556963-6d5f-49a8-b779-47aaf0c1319a","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f936ad40-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/e6556963-6d5f-49a8-b779-47aaf0c1319a","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213683,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4M30.fUS2eIn4nMzdJpSdY1IZpqjKE3wSwFNQIdhLzuOMDMc"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f936ad40-442a-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:42068","level":"info","msg":"Received request.","req_id":276,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:43Z"} authorization-1 | {"client_addr":"127.0.0.1:42068","level":"info","msg":"Sent response.","req_id":276,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.813924,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/dd26beb0-c4f6-47dc-9cc9-3908f88ce445","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f936fb60-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/dd26beb0-c4f6-47dc-9cc9-3908f88ce445","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213683,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4M30.fUS2eIn4nMzdJpSdY1IZpqjKE3wSwFNQIdhLzuOMDMc"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"f936fb60-442a-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe6556963-6d5f-49a8-b779-47aaf0c1319a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe6556963-6d5f-49a8-b779-47aaf0c1319a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:41.006975792Z"}]},"request_id":"941c624a-2da4-4daf-a1eb-7a51f56e3971","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213683.230636} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f936ad40-442a-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdd26beb0-c4f6-47dc-9cc9-3908f88ce445","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdd26beb0-c4f6-47dc-9cc9-3908f88ce445","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:41.051478349Z"}]},"request_id":"45956954-6264-4355-8dbc-32e52b83a79d","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213683.2371838} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f936ad40-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"f936fb60-442a-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/e6556963-6d5f-49a8-b779-47aaf0c1319a? 200 19ms","method":"GET","requestID":"f936ad40-442a-11ef-8685-a1e9f27e6f28","responseTime":19,"status":200,"url":"/devices/e6556963-6d5f-49a8-b779-47aaf0c1319a?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f936fb60-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/dd26beb0-c4f6-47dc-9cc9-3908f88ce445? 200 21ms","method":"GET","requestID":"f936fb60-442a-11ef-8685-a1e9f27e6f28","responseTime":21,"status":200,"url":"/devices/dd26beb0-c4f6-47dc-9cc9-3908f88ce445?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/eb936b3a-e94a-4818-b510-2bb34c3883e7"},"level":"info","message":"Setting up experiment","requestID":"c89963ed986e94a601d51c9544b6d00b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/eb936b3a-e94a-4818-b510-2bb34c3883e7"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"c89963ed986e94a601d51c9544b6d00b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/eb936b3a-e94a-4818-b510-2bb34c3883e7"},"level":"info","message":"Successfully locked booking for experiment","requestID":"c89963ed986e94a601d51c9544b6d00b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/eb936b3a-e94a-4818-b510-2bb34c3883e7"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"c89963ed986e94a601d51c9544b6d00b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/eb936b3a-e94a-4818-b510-2bb34c3883e7"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"c89963ed986e94a601d51c9544b6d00b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/eb936b3a-e94a-4818-b510-2bb34c3883e7"},"level":"info","message":"Attempting to update booking for experiment","requestID":"c89963ed986e94a601d51c9544b6d00b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/eb936b3a-e94a-4818-b510-2bb34c3883e7"},"level":"info","message":"Successfully updated booking for experiment","requestID":"c89963ed986e94a601d51c9544b6d00b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/eb936b3a-e94a-4818-b510-2bb34c3883e7"},"level":"info","message":"Successfully set up experiment","requestID":"c89963ed986e94a601d51c9544b6d00b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f943cca0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f943f3b0-442a-11ef-8685-a1e9f27e6f28"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/eb936b3a-e94a-4818-b510-2bb34c3883e7"},"level":"info","message":"Successfully running experiment","requestID":"c89963ed986e94a601d51c9544b6d00b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f94441d0-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":277,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:43Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":277,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.99936,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:43Z"} authorization-1 | {"client_addr":"127.0.0.1:42068","level":"info","msg":"Received request.","req_id":278,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e6556963-6d5f-49a8-b779-47aaf0c1319a","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f943cca0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/e6556963-6d5f-49a8-b779-47aaf0c1319a","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213683,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4M30.fUS2eIn4nMzdJpSdY1IZpqjKE3wSwFNQIdhLzuOMDMc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f943cca0-442a-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:42068","level":"info","msg":"Sent response.","req_id":278,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.027925,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/dd26beb0-c4f6-47dc-9cc9-3908f88ce445","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f943f3b0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/dd26beb0-c4f6-47dc-9cc9-3908f88ce445","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213683,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4M30.fUS2eIn4nMzdJpSdY1IZpqjKE3wSwFNQIdhLzuOMDMc"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"f943f3b0-442a-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:42070","level":"info","msg":"Received request.","req_id":279,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:43Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe6556963-6d5f-49a8-b779-47aaf0c1319a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe6556963-6d5f-49a8-b779-47aaf0c1319a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:41.006975792Z"}]},"request_id":"40d48e45-256d-4036-a3a6-dd60d183fde5","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213683.3219025} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe6556963-6d5f-49a8-b779-47aaf0c1319a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2c771dc6-224a-438d-bd95-ae2b737c1bde","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213683.3223283} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"f943cca0-442a-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdd26beb0-c4f6-47dc-9cc9-3908f88ce445","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdd26beb0-c4f6-47dc-9cc9-3908f88ce445","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:41.051478349Z"}]},"request_id":"51b03cfb-0fd5-41b9-9455-0528d5c32c09","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213683.3232481} authorization-1 | {"client_addr":"127.0.0.1:42070","level":"info","msg":"Sent response.","req_id":279,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.171432,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e6556963-6d5f-49a8-b779-47aaf0c1319a","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f94441d0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e6556963-6d5f-49a8-b779-47aaf0c1319a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"f94441d0-442a-11ef-8685-a1e9f27e6f28","responseTime":12,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"f943f3b0-442a-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f943cca0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/e6556963-6d5f-49a8-b779-47aaf0c1319a? 200 25ms","method":"GET","requestID":"f943cca0-442a-11ef-8685-a1e9f27e6f28","responseTime":25,"status":200,"url":"/devices/e6556963-6d5f-49a8-b779-47aaf0c1319a?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f94441d0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/e6556963-6d5f-49a8-b779-47aaf0c1319a/signaling 200 23ms","method":"POST","requestID":"f94441d0-442a-11ef-8685-a1e9f27e6f28","responseTime":23,"status":200,"url":"/devices/e6556963-6d5f-49a8-b779-47aaf0c1319a/signaling"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Feb936b3a-e94a-4818-b510-2bb34c3883e7#owner@http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Feb936b3a-e94a-4818-b510-2bb34c3883e7","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"08989305-8d40-4beb-a649-5bb4726a50a0","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213683.3326986} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7eea2e48-92c0-4ec4-9090-79c22f19cdf2","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213683.3330214} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f943f3b0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/dd26beb0-c4f6-47dc-9cc9-3908f88ce445? 200 28ms","method":"GET","requestID":"f943f3b0-442a-11ef-8685-a1e9f27e6f28","responseTime":28,"status":200,"url":"/devices/dd26beb0-c4f6-47dc-9cc9-3908f88ce445?"} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"c89963ed986e94a601d51c9544b6d00b","responseTime":23,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f9483970-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f948aea0-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":280,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:43Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdd26beb0-c4f6-47dc-9cc9-3908f88ce445","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ecebee3e-cb36-4d68-bcc1-aa334a01d616","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213683.3432512} authorization-1 | {"client_addr":"127.0.0.1:42068","level":"info","msg":"Received request.","req_id":281,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:43Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":280,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.908504,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/dd26beb0-c4f6-47dc-9cc9-3908f88ce445","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f9483970-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/dd26beb0-c4f6-47dc-9cc9-3908f88ce445","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"f9483970-442a-11ef-8685-a1e9f27e6f28","responseTime":10,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/eb936b3a-e94a-4818-b510-2bb34c3883e7","user":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"c89963ed986e94a601d51c9544b6d00b"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe6556963-6d5f-49a8-b779-47aaf0c1319a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"10023a67-3a54-40a3-9854-07fe6538d10c","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213683.345861} authorization-1 | {"client_addr":"127.0.0.1:42068","level":"info","msg":"Sent response.","req_id":281,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.183079,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:43Z"} gateway-1 | {"time_local":"17/Jul/2024:10:54:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"781","request_time":"0.177","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c89963ed986e94a601d51c9544b6d00b"} experiment-1 | {"level":"info","message":"POST /experiments? 201 172ms","method":"POST","requestID":"c89963ed986e94a601d51c9544b6d00b","responseTime":172,"status":201,"url":"/experiments?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e6556963-6d5f-49a8-b779-47aaf0c1319a","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f948aea0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e6556963-6d5f-49a8-b779-47aaf0c1319a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"f948aea0-442a-11ef-8685-a1e9f27e6f28","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f9483970-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/dd26beb0-c4f6-47dc-9cc9-3908f88ce445/signaling 200 17ms","method":"POST","requestID":"f9483970-442a-11ef-8685-a1e9f27e6f28","responseTime":17,"status":200,"url":"/devices/dd26beb0-c4f6-47dc-9cc9-3908f88ce445/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f948aea0-442a-11ef-8685-a1e9f27e6f28"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4M30.fUS2eIn4nMzdJpSdY1IZpqjKE3wSwFNQIdhLzuOMDMc","level":"info","message":"auth send jwt","requestID":"7b4c9747504e95b34973974a805595d1"} device-1 | {"level":"info","message":"POST /devices/e6556963-6d5f-49a8-b779-47aaf0c1319a/signaling 200 16ms","method":"POST","requestID":"f948aea0-442a-11ef-8685-a1e9f27e6f28","responseTime":16,"status":200,"url":"/devices/e6556963-6d5f-49a8-b779-47aaf0c1319a/signaling"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"7b4c9747504e95b34973974a805595d1","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7b4c9747504e95b34973974a805595d1"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f94b94d0-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":282,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:43Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":282,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.884049,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e6556963-6d5f-49a8-b779-47aaf0c1319a","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"7b4c9747504e95b34973974a805595d1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/e6556963-6d5f-49a8-b779-47aaf0c1319a","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213683,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4M30.fUS2eIn4nMzdJpSdY1IZpqjKE3wSwFNQIdhLzuOMDMc"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"7b4c9747504e95b34973974a805595d1","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:42068","level":"info","msg":"Received request.","req_id":283,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:43Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdd26beb0-c4f6-47dc-9cc9-3908f88ce445","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5159e359-9a7f-4db5-a059-ef529171c53f","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213683.3646958} authorization-1 | {"client_addr":"127.0.0.1:42068","level":"info","msg":"Sent response.","req_id":283,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.317934,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/dd26beb0-c4f6-47dc-9cc9-3908f88ce445","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f94b94d0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/dd26beb0-c4f6-47dc-9cc9-3908f88ce445","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f94b94d0-442a-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f94b94d0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/dd26beb0-c4f6-47dc-9cc9-3908f88ce445/signaling 200 11ms","method":"POST","requestID":"f94b94d0-442a-11ef-8685-a1e9f27e6f28","responseTime":11,"status":200,"url":"/devices/dd26beb0-c4f6-47dc-9cc9-3908f88ce445/signaling"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe6556963-6d5f-49a8-b779-47aaf0c1319a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe6556963-6d5f-49a8-b779-47aaf0c1319a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:41.006975792Z"}]},"request_id":"a014b19b-7ed9-444e-8d2e-a0b8ceaec077","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213683.3687809} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7b4c9747504e95b34973974a805595d1","responseTime":4,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/eb936b3a-e94a-4818-b510-2bb34c3883e7"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"c89963ed986e94a601d51c9544b6d00b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/eb936b3a-e94a-4818-b510-2bb34c3883e7"},"level":"info","message":"Building connection plan","requestID":"c89963ed986e94a601d51c9544b6d00b"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"79c9ea60-70f4-4d56-83c7-616d80cf2156"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"a3043dd1-0219-4525-87d5-3693d7203d05"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/file","uuid":"19c08121-c07d-49a6-ad48-bb16bb998a0e"}]},"level":"info","message":"Built pairwise service configurations","requestID":"c89963ed986e94a601d51c9544b6d00b"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/e6556963-6d5f-49a8-b779-47aaf0c1319a"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/dd26beb0-c4f6-47dc-9cc9-3908f88ce445"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"c89963ed986e94a601d51c9544b6d00b"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"f94ddec0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7b4c9747504e95b34973974a805595d1"} gateway-1 | {"time_local":"17/Jul/2024:10:54:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e6556963-6d5f-49a8-b779-47aaf0c1319a? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7b4c9747504e95b34973974a805595d1"} device-1 | {"level":"info","message":"GET /devices/e6556963-6d5f-49a8-b779-47aaf0c1319a? 200 19ms","method":"GET","requestID":"7b4c9747504e95b34973974a805595d1","responseTime":19,"status":200,"url":"/devices/e6556963-6d5f-49a8-b779-47aaf0c1319a?"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":284,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:43Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":284,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.789922,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:43Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f94ddec0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213683,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4M30.fUS2eIn4nMzdJpSdY1IZpqjKE3wSwFNQIdhLzuOMDMc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f94ddec0-442a-11ef-8685-a1e9f27e6f28","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4M30.fUS2eIn4nMzdJpSdY1IZpqjKE3wSwFNQIdhLzuOMDMc","level":"info","message":"auth send jwt","requestID":"7da40f42b2c51d0697f1bad579c02465"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"7da40f42b2c51d0697f1bad579c02465","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7da40f42b2c51d0697f1bad579c02465"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":285,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:43Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":285,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.693504,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/dd26beb0-c4f6-47dc-9cc9-3908f88ce445","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"7da40f42b2c51d0697f1bad579c02465","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/dd26beb0-c4f6-47dc-9cc9-3908f88ce445","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213683,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4M30.fUS2eIn4nMzdJpSdY1IZpqjKE3wSwFNQIdhLzuOMDMc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7da40f42b2c51d0697f1bad579c02465","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"0fbc9d0d-c2c0-4dd0-abf3-8ef9cd2b52a0","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213683.388756} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"aa993c31-0d0e-498a-94f3-1aeb813f3f46","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213683.3890562} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdd26beb0-c4f6-47dc-9cc9-3908f88ce445","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdd26beb0-c4f6-47dc-9cc9-3908f88ce445","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:41.051478349Z"}]},"request_id":"bebd90c2-e971-49e0-a8e9-02a44377fdc8","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213683.3896313} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"f94ddec0-442a-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/relations/update"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7da40f42b2c51d0697f1bad579c02465","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7da40f42b2c51d0697f1bad579c02465"} gateway-1 | {"time_local":"17/Jul/2024:10:54:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/dd26beb0-c4f6-47dc-9cc9-3908f88ce445? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7da40f42b2c51d0697f1bad579c02465"} device-1 | {"level":"info","message":"GET /devices/dd26beb0-c4f6-47dc-9cc9-3908f88ce445? 200 14ms","method":"GET","requestID":"7da40f42b2c51d0697f1bad579c02465","responseTime":14,"status":200,"url":"/devices/dd26beb0-c4f6-47dc-9cc9-3908f88ce445?"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"f94ddec0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"f94ddec0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/841a9dae-b821-4784-b2a4-3564dca2d897'","requestID":"f94ddec0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/841a9dae-b821-4784-b2a4-3564dca2d897'","requestID":"f94ddec0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"f94ddec0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 31ms","method":"POST","requestID":"f94ddec0-442a-11ef-8685-a1e9f27e6f28","responseTime":31,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"f94ddec0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/841a9dae-b821-4784-b2a4-3564dca2d897","device":"dd26beb0-c4f6-47dc-9cc9-3908f88ce445","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}],"tiebreaker":true} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/eb936b3a-e94a-4818-b510-2bb34c3883e7"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"c89963ed986e94a601d51c9544b6d00b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f956b860-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":286,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:43Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe6556963-6d5f-49a8-b779-47aaf0c1319a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e117ac57-8997-4186-a8a5-501e8c561e09","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213683.4348304} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":286,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.495846,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e6556963-6d5f-49a8-b779-47aaf0c1319a","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f956b860-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e6556963-6d5f-49a8-b779-47aaf0c1319a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f956b860-442a-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f956b860-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/e6556963-6d5f-49a8-b779-47aaf0c1319a/signaling 200 9ms","method":"POST","requestID":"f956b860-442a-11ef-8685-a1e9f27e6f28","responseTime":9,"status":200,"url":"/devices/e6556963-6d5f-49a8-b779-47aaf0c1319a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"f9586610-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"device":"dd26beb0-c4f6-47dc-9cc9-3908f88ce445","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"dd26beb0-c4f6-47dc-9cc9-3908f88ce445","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":287,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:43Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdd26beb0-c4f6-47dc-9cc9-3908f88ce445","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7faa0a90-ea73-4913-a504-919973ac7164","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213683.4463377} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":287,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.997594,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:43Z"} device-1 | {"content":{"sdp":"v=0\r\no=- 2972024316731588586 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:QuRE\r\na=ice-pwd:oPkCHXxL+tLpUow3lyo107Nr\r\na=ice-options:trickle\r\na=fingerprint:sha-256 44:F1:00:FA:A2:9A:BD:8A:92:D3:0A:7C:EA:1D:DD:52:E0:1C:E9:65:96:5B:D7:C1:EA:0B:37:60:D7:A4:6B:98\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"dd26beb0-c4f6-47dc-9cc9-3908f88ce445","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/dd26beb0-c4f6-47dc-9cc9-3908f88ce445","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f9586610-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/dd26beb0-c4f6-47dc-9cc9-3908f88ce445","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f9586610-442a-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"f9586610-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/dd26beb0-c4f6-47dc-9cc9-3908f88ce445/signaling 200 11ms","method":"POST","requestID":"f9586610-442a-11ef-8685-a1e9f27e6f28","responseTime":11,"status":200,"url":"/devices/dd26beb0-c4f6-47dc-9cc9-3908f88ce445/signaling"} device-1 | {"device":"dd26beb0-c4f6-47dc-9cc9-3908f88ce445","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"e6556963-6d5f-49a8-b779-47aaf0c1319a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"841a9dae-b821-4784-b2a4-3564dca2d897","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"e6556963-6d5f-49a8-b779-47aaf0c1319a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"e6556963-6d5f-49a8-b779-47aaf0c1319a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"e6556963-6d5f-49a8-b779-47aaf0c1319a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"e6556963-6d5f-49a8-b779-47aaf0c1319a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/841a9dae-b821-4784-b2a4-3564dca2d897' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"841a9dae-b821-4784-b2a4-3564dca2d897","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a5e8f2b6fe13f29cdeb09170b77bf659","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"a5e8f2b6fe13f29cdeb09170b77bf659","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connecting","url":"http://localhost/devices/e6556963-6d5f-49a8-b779-47aaf0c1319a"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"new","url":"http://localhost/devices/dd26beb0-c4f6-47dc-9cc9-3908f88ce445"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/841a9dae-b821-4784-b2a4-3564dca2d897"}}},"level":"info","message":"received a callback","requestID":"a5e8f2b6fe13f29cdeb09170b77bf659"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 8ms","method":"POST","requestID":"a5e8f2b6fe13f29cdeb09170b77bf659","responseTime":8,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:54:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.011","http_referrer":"","http_user_agent":"node-fetch","requestID":"a5e8f2b6fe13f29cdeb09170b77bf659"} device-1 | {"content":{"candidate":"candidate:1668148350 1 udp 2113937151 446bffdc-ee8a-4da4-9cff-d4766dd98674.local 45999 typ host generation 0 ufrag QuRE network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"dd26beb0-c4f6-47dc-9cc9-3908f88ce445","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1093886707 1 udp 1677729535 141.24.211.56 45999 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag QuRE network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"dd26beb0-c4f6-47dc-9cc9-3908f88ce445","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1721270401 1 udp 33562623 141.24.210.113 56920 typ relay raddr 141.24.211.56 rport 45999 generation 0 ufrag QuRE network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"dd26beb0-c4f6-47dc-9cc9-3908f88ce445","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/dd26beb0-c4f6-47dc-9cc9-3908f88ce445'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/dd26beb0-c4f6-47dc-9cc9-3908f88ce445'"} device-1 | {"device":"dd26beb0-c4f6-47dc-9cc9-3908f88ce445","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"data":{"peerconnection":"841a9dae-b821-4784-b2a4-3564dca2d897","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"e6556963-6d5f-49a8-b779-47aaf0c1319a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"dd26beb0-c4f6-47dc-9cc9-3908f88ce445","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"e6556963-6d5f-49a8-b779-47aaf0c1319a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"841a9dae-b821-4784-b2a4-3564dca2d897","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/841a9dae-b821-4784-b2a4-3564dca2d897' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"841a9dae-b821-4784-b2a4-3564dca2d897","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ad2ab37567ac9c9fa24bf77112195b6e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"ad2ab37567ac9c9fa24bf77112195b6e","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/e6556963-6d5f-49a8-b779-47aaf0c1319a"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/dd26beb0-c4f6-47dc-9cc9-3908f88ce445"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/841a9dae-b821-4784-b2a4-3564dca2d897"}}},"level":"info","message":"received a callback","requestID":"ad2ab37567ac9c9fa24bf77112195b6e"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"fa9d4220-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":288,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:45Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F841a9dae-b821-4784-b2a4-3564dca2d897","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"782db73f-6f90-4ccd-96d3-06f3891de34f","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213685.576331} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":288,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.710837,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/841a9dae-b821-4784-b2a4-3564dca2d897","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"fa9d4220-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/841a9dae-b821-4784-b2a4-3564dca2d897","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"fa9d4220-442a-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"fa9d4220-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /peerconnections/841a9dae-b821-4784-b2a4-3564dca2d897 200 12ms","method":"GET","requestID":"fa9d4220-442a-11ef-8685-a1e9f27e6f28","responseTime":12,"status":200,"url":"/peerconnections/841a9dae-b821-4784-b2a4-3564dca2d897"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 39ms","method":"POST","requestID":"ad2ab37567ac9c9fa24bf77112195b6e","responseTime":39,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:54:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.043","http_referrer":"","http_user_agent":"node-fetch","requestID":"ad2ab37567ac9c9fa24bf77112195b6e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"faa27240-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":289,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:45Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe6556963-6d5f-49a8-b779-47aaf0c1319a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"72cf628e-70e2-4bde-8c06-b8676b440293","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213685.609101} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":289,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.340892,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:45Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e6556963-6d5f-49a8-b779-47aaf0c1319a","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"faa27240-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e6556963-6d5f-49a8-b779-47aaf0c1319a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"faa27240-442a-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"faa27240-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/e6556963-6d5f-49a8-b779-47aaf0c1319a/signaling 200 10ms","method":"POST","requestID":"faa27240-442a-11ef-8685-a1e9f27e6f28","responseTime":10,"status":200,"url":"/devices/e6556963-6d5f-49a8-b779-47aaf0c1319a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"faa44700-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":290,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:45Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdd26beb0-c4f6-47dc-9cc9-3908f88ce445","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"99892cbe-609e-4419-a304-1b3acca73e62","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213685.621609} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":290,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.340191,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:45Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/dd26beb0-c4f6-47dc-9cc9-3908f88ce445","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"faa44700-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/dd26beb0-c4f6-47dc-9cc9-3908f88ce445","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"faa44700-442a-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"faa44700-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/dd26beb0-c4f6-47dc-9cc9-3908f88ce445/signaling 200 10ms","method":"POST","requestID":"faa44700-442a-11ef-8685-a1e9f27e6f28","responseTime":10,"status":200,"url":"/devices/dd26beb0-c4f6-47dc-9cc9-3908f88ce445/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4NX0.KsiLVK0qO9yrkDki4zm2I_BZhsZHNq0BIDPskp8R9OA","level":"info","message":"auth send jwt","requestID":"853ec2fcc587af78a14a20d2cb0976f4"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"853ec2fcc587af78a14a20d2cb0976f4","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/eb936b3a-e94a-4818-b510-2bb34c3883e7","requestID":"853ec2fcc587af78a14a20d2cb0976f4"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":291,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:45Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":291,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.350329,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/eb936b3a-e94a-4818-b510-2bb34c3883e7","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"853ec2fcc587af78a14a20d2cb0976f4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:http://localhost/experiments/eb936b3a-e94a-4818-b510-2bb34c3883e7","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213685,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4NX0.KsiLVK0qO9yrkDki4zm2I_BZhsZHNq0BIDPskp8R9OA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"853ec2fcc587af78a14a20d2cb0976f4","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/eb936b3a-e94a-4818-b510-2bb34c3883e7","requestID":"853ec2fcc587af78a14a20d2cb0976f4"} gateway-1 | {"time_local":"17/Jul/2024:10:54:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/eb936b3a-e94a-4818-b510-2bb34c3883e7 HTTP/1.1","status": "200","body_bytes_sent":"854","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"853ec2fcc587af78a14a20d2cb0976f4"} experiment-1 | {"level":"info","message":"GET /experiments/eb936b3a-e94a-4818-b510-2bb34c3883e7 200 17ms","method":"GET","requestID":"853ec2fcc587af78a14a20d2cb0976f4","responseTime":17,"status":200,"url":"/experiments/eb936b3a-e94a-4818-b510-2bb34c3883e7"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4NX0.KsiLVK0qO9yrkDki4zm2I_BZhsZHNq0BIDPskp8R9OA","level":"info","message":"auth send jwt","requestID":"417bd7d4702ef0fad5dcdbecddfb63af"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"417bd7d4702ef0fad5dcdbecddfb63af","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/eb936b3a-e94a-4818-b510-2bb34c3883e7","requestID":"417bd7d4702ef0fad5dcdbecddfb63af"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":292,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:45Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":292,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":2.384815,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:45Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/eb936b3a-e94a-4818-b510-2bb34c3883e7","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"417bd7d4702ef0fad5dcdbecddfb63af","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:http://localhost/experiments/eb936b3a-e94a-4818-b510-2bb34c3883e7","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213685,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4NX0.KsiLVK0qO9yrkDki4zm2I_BZhsZHNq0BIDPskp8R9OA"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"417bd7d4702ef0fad5dcdbecddfb63af","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/eb936b3a-e94a-4818-b510-2bb34c3883e7"},"level":"info","message":"Attempting to finish experiment","requestID":"417bd7d4702ef0fad5dcdbecddfb63af"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"fac6c320-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":293,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:45Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":293,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.201404,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:45Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/841a9dae-b821-4784-b2a4-3564dca2d897","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"fac6c320-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"peerconnection:http://localhost/peerconnections/841a9dae-b821-4784-b2a4-3564dca2d897","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213685,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4NX0.KsiLVK0qO9yrkDki4zm2I_BZhsZHNq0BIDPskp8R9OA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fac6c320-442a-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/841a9dae-b821-4784-b2a4-3564dca2d897","device":"dd26beb0-c4f6-47dc-9cc9-3908f88ce445","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"e6556963-6d5f-49a8-b779-47aaf0c1319a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"e6556963-6d5f-49a8-b779-47aaf0c1319a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"e6556963-6d5f-49a8-b779-47aaf0c1319a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/841a9dae-b821-4784-b2a4-3564dca2d897' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/841a9dae-b821-4784-b2a4-3564dca2d897' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"841a9dae-b821-4784-b2a4-3564dca2d897","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ab7144538d805b91056677db75c9cad9","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d32198d2-62e5-4f24-88fc-95d8407d9a1b","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213685.8674788} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"ab7144538d805b91056677db75c9cad9","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F841a9dae-b821-4784-b2a4-3564dca2d897': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F841a9dae-b821-4784-b2a4-3564dca2d897","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]},"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":null},"raw_response":{},"request_id":"6a9c0141-4455-4dd2-a586-b35263cb96d4","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213685.8679214} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"db3c4d8859e69e74262913af35cdb8f4","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"db3c4d8859e69e74262913af35cdb8f4","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/e6556963-6d5f-49a8-b779-47aaf0c1319a"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/dd26beb0-c4f6-47dc-9cc9-3908f88ce445"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/841a9dae-b821-4784-b2a4-3564dca2d897"}}},"level":"info","message":"received a callback","requestID":"ab7144538d805b91056677db75c9cad9"} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"fac6c320-442a-11ef-8685-a1e9f27e6f28","responseTime":10,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/e6556963-6d5f-49a8-b779-47aaf0c1319a"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/dd26beb0-c4f6-47dc-9cc9-3908f88ce445"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/841a9dae-b821-4784-b2a4-3564dca2d897"}}},"level":"info","message":"received a callback","requestID":"db3c4d8859e69e74262913af35cdb8f4"} device-1 | {"data":{"peerconnection":"841a9dae-b821-4784-b2a4-3564dca2d897","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"fac6c320-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"DELETE /peerconnections/841a9dae-b821-4784-b2a4-3564dca2d897 204 47ms","method":"DELETE","requestID":"fac6c320-442a-11ef-8685-a1e9f27e6f28","responseTime":47,"status":204,"url":"/peerconnections/841a9dae-b821-4784-b2a4-3564dca2d897"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/eb936b3a-e94a-4818-b510-2bb34c3883e7"},"level":"info","message":"Successfully finished experiment","requestID":"417bd7d4702ef0fad5dcdbecddfb63af"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fad0ae30-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":294,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:45Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe6556963-6d5f-49a8-b779-47aaf0c1319a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"945708ae-e865-4571-88c7-60cc0504beaf","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213685.9135778} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":294,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.86673,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:45Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e6556963-6d5f-49a8-b779-47aaf0c1319a","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"fad0ae30-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e6556963-6d5f-49a8-b779-47aaf0c1319a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"fad0ae30-442a-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fad0ae30-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/e6556963-6d5f-49a8-b779-47aaf0c1319a/signaling 200 11ms","method":"POST","requestID":"fad0ae30-442a-11ef-8685-a1e9f27e6f28","responseTime":11,"status":200,"url":"/devices/e6556963-6d5f-49a8-b779-47aaf0c1319a/signaling"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Feb936b3a-e94a-4818-b510-2bb34c3883e7': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Feb936b3a-e94a-4818-b510-2bb34c3883e7","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]},"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":null},"raw_response":{},"request_id":"57cd74e3-092f-4df1-b91e-b133ecf743e5","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213685.92064} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e153d22f-6743-4e65-8c42-752124a7136e","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213685.9209442} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fad2d110-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"417bd7d4702ef0fad5dcdbecddfb63af","responseTime":16,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":295,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:45Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdd26beb0-c4f6-47dc-9cc9-3908f88ce445","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1ef4a95c-e40c-4a2c-b8f5-bd42e756908e","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213685.9269419} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":295,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.815211,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:45Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/dd26beb0-c4f6-47dc-9cc9-3908f88ce445","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"fad2d110-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/dd26beb0-c4f6-47dc-9cc9-3908f88ce445","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"fad2d110-442a-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fad2d110-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/dd26beb0-c4f6-47dc-9cc9-3908f88ce445/signaling 200 11ms","method":"POST","requestID":"fad2d110-442a-11ef-8685-a1e9f27e6f28","responseTime":11,"status":200,"url":"/devices/dd26beb0-c4f6-47dc-9cc9-3908f88ce445/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/eb936b3a-e94a-4818-b510-2bb34c3883e7","requestID":"417bd7d4702ef0fad5dcdbecddfb63af"} gateway-1 | {"time_local":"17/Jul/2024:10:54:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/eb936b3a-e94a-4818-b510-2bb34c3883e7 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.158","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"417bd7d4702ef0fad5dcdbecddfb63af"} experiment-1 | {"level":"info","message":"DELETE /experiments/eb936b3a-e94a-4818-b510-2bb34c3883e7 204 156ms","method":"DELETE","requestID":"417bd7d4702ef0fad5dcdbecddfb63af","responseTime":156,"status":204,"url":"/experiments/eb936b3a-e94a-4818-b510-2bb34c3883e7"} gateway-1 | {"time_local":"17/Jul/2024:10:54:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2975","request_time":"4.376","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"5e8cd981d2557e2e27af7dbbbbe2635b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 114ms","method":"POST","requestID":"ab7144538d805b91056677db75c9cad9","responseTime":114,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:54:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.118","http_referrer":"","http_user_agent":"node-fetch","requestID":"ab7144538d805b91056677db75c9cad9"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 114ms","method":"POST","requestID":"db3c4d8859e69e74262913af35cdb8f4","responseTime":114,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:54:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.119","http_referrer":"","http_user_agent":"node-fetch","requestID":"db3c4d8859e69e74262913af35cdb8f4"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4NX0.KsiLVK0qO9yrkDki4zm2I_BZhsZHNq0BIDPskp8R9OA","level":"info","message":"auth send jwt","requestID":"bff57a4804e36509d5391fb1d312c215"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"bff57a4804e36509d5391fb1d312c215","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"bff57a4804e36509d5391fb1d312c215"} gateway-1 | {"time_local":"17/Jul/2024:10:54:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2485","request_time":"2.888","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"a936790db39c99f9108c3915a459ac8b"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":296,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:45Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":296,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.074771,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:45Z"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/e6556963-6d5f-49a8-b779-47aaf0c1319a' closed"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"bff57a4804e36509d5391fb1d312c215","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213685,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4NX0.KsiLVK0qO9yrkDki4zm2I_BZhsZHNq0BIDPskp8R9OA"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"bff57a4804e36509d5391fb1d312c215","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/dd26beb0-c4f6-47dc-9cc9-3908f88ce445' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f77fcdb-668b-4463-b5ae-0e4adad2e8ee","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"3f6ae249-7d48-4a88-aa71-a4361485546c","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213686.009326} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"bff57a4804e36509d5391fb1d312c215","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4d07a4bc-d86d-4131-914c-3f7b070869de","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213686.015741} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"bff57a4804e36509d5391fb1d312c215","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f77fcdb-668b-4463-b5ae-0e4adad2e8ee","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"c03fe250-45a1-4d8d-af91-f3066ee693d7","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213686.028331} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"893fcafa-dc12-44f7-9a21-575b17023da6","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213686.0284698} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"bff57a4804e36509d5391fb1d312c215","responseTime":15,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f77fcdb-668b-4463-b5ae-0e4adad2e8ee","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f77fcdb-668b-4463-b5ae-0e4adad2e8ee","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:46.028310860Z"}]},"request_id":"5bd26f72-2c60-45c9-904b-00bae5155127","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213686.0339997} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"bff57a4804e36509d5391fb1d312c215","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"bff57a4804e36509d5391fb1d312c215"} gateway-1 | {"time_local":"17/Jul/2024:10:54:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.056","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bff57a4804e36509d5391fb1d312c215"} device-1 | {"level":"info","message":"POST /devices? 201 49ms","method":"POST","requestID":"bff57a4804e36509d5391fb1d312c215","responseTime":49,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4Nn0.5gUuc6sUb7PXbUAVghgAWZ5lhzpeIgDwoHJ26eVrzhY","level":"info","message":"auth send jwt","requestID":"2a3f3a92f0f1ec6e6a4e3198643af6a6"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"2a3f3a92f0f1ec6e6a4e3198643af6a6","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"2a3f3a92f0f1ec6e6a4e3198643af6a6"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":297,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:46Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":297,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.977562,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:46Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"2a3f3a92f0f1ec6e6a4e3198643af6a6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213686,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4Nn0.5gUuc6sUb7PXbUAVghgAWZ5lhzpeIgDwoHJ26eVrzhY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2a3f3a92f0f1ec6e6a4e3198643af6a6","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a70f06b-ff2c-4a4e-9abf-c9d0503f9109","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"88efb02c-17d0-4b67-997c-3c3645cde595","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213686.0654273} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"2a3f3a92f0f1ec6e6a4e3198643af6a6","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"dd1ed04f-4d73-4fbb-b551-d6142e1ea2ed","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213686.0714011} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"2a3f3a92f0f1ec6e6a4e3198643af6a6","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a70f06b-ff2c-4a4e-9abf-c9d0503f9109","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"ffea5cc2-b901-45b6-b13f-2558b2de1714","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213686.0866458} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"987d5558-952e-4d8a-9d0e-34aa4e853b3b","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213686.0868254} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"2a3f3a92f0f1ec6e6a4e3198643af6a6","responseTime":18,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a70f06b-ff2c-4a4e-9abf-c9d0503f9109","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a70f06b-ff2c-4a4e-9abf-c9d0503f9109","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:46.086626040Z"}]},"request_id":"834d56c9-7f52-47d6-ad3b-56189006ad64","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213686.0914087} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2a3f3a92f0f1ec6e6a4e3198643af6a6","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"2a3f3a92f0f1ec6e6a4e3198643af6a6"} gateway-1 | {"time_local":"17/Jul/2024:10:54:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.055","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2a3f3a92f0f1ec6e6a4e3198643af6a6"} device-1 | {"level":"info","message":"POST /devices? 201 50ms","method":"POST","requestID":"2a3f3a92f0f1ec6e6a4e3198643af6a6","responseTime":50,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4Nn0.5gUuc6sUb7PXbUAVghgAWZ5lhzpeIgDwoHJ26eVrzhY","level":"info","message":"auth send jwt","requestID":"f07d61d08a4d9aa4f396fb2096b2534c"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"f07d61d08a4d9aa4f396fb2096b2534c","responseTime":5,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4Nn0.5gUuc6sUb7PXbUAVghgAWZ5lhzpeIgDwoHJ26eVrzhY","level":"info","message":"auth send jwt","requestID":"a7b1b3137ec3eaa1fb7f8b5fa2cdacf5"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"a7b1b3137ec3eaa1fb7f8b5fa2cdacf5","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"f07d61d08a4d9aa4f396fb2096b2534c"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"a7b1b3137ec3eaa1fb7f8b5fa2cdacf5"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":298,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:46Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":298,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.590093,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:46Z"} authorization-1 | {"client_addr":"127.0.0.1:42068","level":"info","msg":"Received request.","req_id":299,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:46Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/7a70f06b-ff2c-4a4e-9abf-c9d0503f9109","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f07d61d08a4d9aa4f396fb2096b2534c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/7a70f06b-ff2c-4a4e-9abf-c9d0503f9109","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213686,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4Nn0.5gUuc6sUb7PXbUAVghgAWZ5lhzpeIgDwoHJ26eVrzhY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f07d61d08a4d9aa4f396fb2096b2534c","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:42068","level":"info","msg":"Sent response.","req_id":299,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.659847,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:46Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3f77fcdb-668b-4463-b5ae-0e4adad2e8ee","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"a7b1b3137ec3eaa1fb7f8b5fa2cdacf5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/3f77fcdb-668b-4463-b5ae-0e4adad2e8ee","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213686,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4Nn0.5gUuc6sUb7PXbUAVghgAWZ5lhzpeIgDwoHJ26eVrzhY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a7b1b3137ec3eaa1fb7f8b5fa2cdacf5","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a70f06b-ff2c-4a4e-9abf-c9d0503f9109","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a70f06b-ff2c-4a4e-9abf-c9d0503f9109","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:46.086626040Z"}]},"request_id":"f7b75472-1c07-45bb-94ad-0f05c65d66f2","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213686.5805883} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f07d61d08a4d9aa4f396fb2096b2534c","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f77fcdb-668b-4463-b5ae-0e4adad2e8ee","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f77fcdb-668b-4463-b5ae-0e4adad2e8ee","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:46.028310860Z"}]},"request_id":"d047fbf8-c4b5-4a3c-90ac-212fc408f249","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213686.581555} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"a7b1b3137ec3eaa1fb7f8b5fa2cdacf5","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"90bb68a8-b90a-4258-9661-79a20c8a8e20","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213686.5864213} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"f07d61d08a4d9aa4f396fb2096b2534c","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"76bf0a9a-efd9-4e0e-b39d-26721cbdb365","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213686.5880437} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"a7b1b3137ec3eaa1fb7f8b5fa2cdacf5","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f77fcdb-668b-4463-b5ae-0e4adad2e8ee","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f77fcdb-668b-4463-b5ae-0e4adad2e8ee","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:46.028310860Z"}]},"request_id":"ff0a054e-19e5-40dd-b42b-9f4cf523ddd0","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213686.592123} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a7b1b3137ec3eaa1fb7f8b5fa2cdacf5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"a7b1b3137ec3eaa1fb7f8b5fa2cdacf5"} device-1 | {"level":"info","message":"PATCH /devices/3f77fcdb-668b-4463-b5ae-0e4adad2e8ee 200 25ms","method":"PATCH","requestID":"a7b1b3137ec3eaa1fb7f8b5fa2cdacf5","responseTime":25,"status":200,"url":"/devices/3f77fcdb-668b-4463-b5ae-0e4adad2e8ee"} gateway-1 | {"time_local":"17/Jul/2024:10:54:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/3f77fcdb-668b-4463-b5ae-0e4adad2e8ee HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.033","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"a7b1b3137ec3eaa1fb7f8b5fa2cdacf5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4Nn0.5gUuc6sUb7PXbUAVghgAWZ5lhzpeIgDwoHJ26eVrzhY","level":"info","message":"auth send jwt","requestID":"9dfae21b316465dffbc4251a73d4552c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"9dfae21b316465dffbc4251a73d4552c","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"9dfae21b316465dffbc4251a73d4552c"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":300,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:46Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":300,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.625954,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:46Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3f77fcdb-668b-4463-b5ae-0e4adad2e8ee","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"9dfae21b316465dffbc4251a73d4552c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/3f77fcdb-668b-4463-b5ae-0e4adad2e8ee","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213686,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4Nn0.5gUuc6sUb7PXbUAVghgAWZ5lhzpeIgDwoHJ26eVrzhY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9dfae21b316465dffbc4251a73d4552c","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a70f06b-ff2c-4a4e-9abf-c9d0503f9109","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a70f06b-ff2c-4a4e-9abf-c9d0503f9109","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:46.086626040Z"}]},"request_id":"ba8ead98-dee4-48cf-888f-24309d2ccc9e","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213686.6035242} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f07d61d08a4d9aa4f396fb2096b2534c","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"f07d61d08a4d9aa4f396fb2096b2534c"} gateway-1 | {"time_local":"17/Jul/2024:10:54:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/7a70f06b-ff2c-4a4e-9abf-c9d0503f9109 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.046","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"f07d61d08a4d9aa4f396fb2096b2534c"} device-1 | {"level":"info","message":"PATCH /devices/7a70f06b-ff2c-4a4e-9abf-c9d0503f9109 200 40ms","method":"PATCH","requestID":"f07d61d08a4d9aa4f396fb2096b2534c","responseTime":40,"status":200,"url":"/devices/7a70f06b-ff2c-4a4e-9abf-c9d0503f9109"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4Nn0.5gUuc6sUb7PXbUAVghgAWZ5lhzpeIgDwoHJ26eVrzhY","level":"info","message":"auth send jwt","requestID":"0f68e89b2d5f6397c7706c65fc2716c0"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"0f68e89b2d5f6397c7706c65fc2716c0","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"0f68e89b2d5f6397c7706c65fc2716c0"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":301,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:46Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":301,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.719753,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:46Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/7a70f06b-ff2c-4a4e-9abf-c9d0503f9109","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0f68e89b2d5f6397c7706c65fc2716c0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/7a70f06b-ff2c-4a4e-9abf-c9d0503f9109","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213686,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4Nn0.5gUuc6sUb7PXbUAVghgAWZ5lhzpeIgDwoHJ26eVrzhY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0f68e89b2d5f6397c7706c65fc2716c0","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"9dfae21b316465dffbc4251a73d4552c"} device-1 | {"level":"info","message":"POST /devices/3f77fcdb-668b-4463-b5ae-0e4adad2e8ee/websocket 200 19ms","method":"POST","requestID":"9dfae21b316465dffbc4251a73d4552c","responseTime":19,"status":200,"url":"/devices/3f77fcdb-668b-4463-b5ae-0e4adad2e8ee/websocket"} gateway-1 | {"time_local":"17/Jul/2024:10:54:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/3f77fcdb-668b-4463-b5ae-0e4adad2e8ee/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.023","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"9dfae21b316465dffbc4251a73d4552c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"0f68e89b2d5f6397c7706c65fc2716c0"} gateway-1 | {"time_local":"17/Jul/2024:10:54:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/7a70f06b-ff2c-4a4e-9abf-c9d0503f9109/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.020","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"0f68e89b2d5f6397c7706c65fc2716c0"} device-1 | {"level":"info","message":"POST /devices/7a70f06b-ff2c-4a4e-9abf-c9d0503f9109/websocket 200 16ms","method":"POST","requestID":"0f68e89b2d5f6397c7706c65fc2716c0","responseTime":16,"status":200,"url":"/devices/7a70f06b-ff2c-4a4e-9abf-c9d0503f9109/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/3f77fcdb-668b-4463-b5ae-0e4adad2e8ee' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/7a70f06b-ff2c-4a4e-9abf-c9d0503f9109' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4Nn0.5gUuc6sUb7PXbUAVghgAWZ5lhzpeIgDwoHJ26eVrzhY","level":"info","message":"auth send jwt","requestID":"99f7968df43cd3caf49e7c2fb75847bb"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"99f7968df43cd3caf49e7c2fb75847bb","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"99f7968df43cd3caf49e7c2fb75847bb"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":302,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:46Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":302,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.675614,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3f77fcdb-668b-4463-b5ae-0e4adad2e8ee","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"99f7968df43cd3caf49e7c2fb75847bb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/3f77fcdb-668b-4463-b5ae-0e4adad2e8ee","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213686,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4Nn0.5gUuc6sUb7PXbUAVghgAWZ5lhzpeIgDwoHJ26eVrzhY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"99f7968df43cd3caf49e7c2fb75847bb","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f77fcdb-668b-4463-b5ae-0e4adad2e8ee","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f77fcdb-668b-4463-b5ae-0e4adad2e8ee","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:46.028310860Z"}]},"request_id":"9130e8a0-af40-4bbb-85e7-a158fbea7b9f","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213686.6617987} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"99f7968df43cd3caf49e7c2fb75847bb","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"99f7968df43cd3caf49e7c2fb75847bb"} device-1 | {"level":"info","message":"GET /devices/3f77fcdb-668b-4463-b5ae-0e4adad2e8ee? 200 10ms","method":"GET","requestID":"99f7968df43cd3caf49e7c2fb75847bb","responseTime":10,"status":200,"url":"/devices/3f77fcdb-668b-4463-b5ae-0e4adad2e8ee?"} gateway-1 | {"time_local":"17/Jul/2024:10:54:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3f77fcdb-668b-4463-b5ae-0e4adad2e8ee? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"99f7968df43cd3caf49e7c2fb75847bb"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4Nn0.5gUuc6sUb7PXbUAVghgAWZ5lhzpeIgDwoHJ26eVrzhY","level":"info","message":"auth send jwt","requestID":"71455b70c41a2dcbbccb913a4ff2f344"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"71455b70c41a2dcbbccb913a4ff2f344","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"71455b70c41a2dcbbccb913a4ff2f344"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":303,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:46Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":303,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.616953,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7a70f06b-ff2c-4a4e-9abf-c9d0503f9109","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"71455b70c41a2dcbbccb913a4ff2f344","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/7a70f06b-ff2c-4a4e-9abf-c9d0503f9109","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213686,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4Nn0.5gUuc6sUb7PXbUAVghgAWZ5lhzpeIgDwoHJ26eVrzhY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"71455b70c41a2dcbbccb913a4ff2f344","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a70f06b-ff2c-4a4e-9abf-c9d0503f9109","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a70f06b-ff2c-4a4e-9abf-c9d0503f9109","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:46.086626040Z"}]},"request_id":"8450a0c7-a96b-4991-a000-8b21e57d4449","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213686.6830027} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"71455b70c41a2dcbbccb913a4ff2f344","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"71455b70c41a2dcbbccb913a4ff2f344"} gateway-1 | {"time_local":"17/Jul/2024:10:54:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7a70f06b-ff2c-4a4e-9abf-c9d0503f9109? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"71455b70c41a2dcbbccb913a4ff2f344"} device-1 | {"level":"info","message":"GET /devices/7a70f06b-ff2c-4a4e-9abf-c9d0503f9109? 200 13ms","method":"GET","requestID":"71455b70c41a2dcbbccb913a4ff2f344","responseTime":13,"status":200,"url":"/devices/7a70f06b-ff2c-4a4e-9abf-c9d0503f9109?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4Nn0.5gUuc6sUb7PXbUAVghgAWZ5lhzpeIgDwoHJ26eVrzhY","level":"info","message":"auth send jwt","requestID":"9a4cbabc2a60564e0c26d967cf46356c"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"9a4cbabc2a60564e0c26d967cf46356c","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"9a4cbabc2a60564e0c26d967cf46356c"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":304,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:46Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":304,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.218441,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:46Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"9a4cbabc2a60564e0c26d967cf46356c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213686,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4Nn0.5gUuc6sUb7PXbUAVghgAWZ5lhzpeIgDwoHJ26eVrzhY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9a4cbabc2a60564e0c26d967cf46356c","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/075d9734-30ed-449a-be05-3c3205624d62"},"level":"info","message":"Attempting to run experiment","requestID":"9a4cbabc2a60564e0c26d967cf46356c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/075d9734-30ed-449a-be05-3c3205624d62"},"level":"info","message":"Attempting to book experiment","requestID":"9a4cbabc2a60564e0c26d967cf46356c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/075d9734-30ed-449a-be05-3c3205624d62"},"level":"info","message":"Successfully booked experiment","requestID":"9a4cbabc2a60564e0c26d967cf46356c"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fb4dcd70-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fb4e1b90-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":305,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:46Z"} authorization-1 | {"client_addr":"127.0.0.1:42068","level":"info","msg":"Received request.","req_id":306,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:46Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":305,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.738244,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3f77fcdb-668b-4463-b5ae-0e4adad2e8ee","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"fb4dcd70-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/3f77fcdb-668b-4463-b5ae-0e4adad2e8ee","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213686,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4Nn0.5gUuc6sUb7PXbUAVghgAWZ5lhzpeIgDwoHJ26eVrzhY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fb4dcd70-442a-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:42068","level":"info","msg":"Sent response.","req_id":306,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.671144,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7a70f06b-ff2c-4a4e-9abf-c9d0503f9109","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"fb4e1b90-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/7a70f06b-ff2c-4a4e-9abf-c9d0503f9109","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213686,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4Nn0.5gUuc6sUb7PXbUAVghgAWZ5lhzpeIgDwoHJ26eVrzhY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"fb4e1b90-442a-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f77fcdb-668b-4463-b5ae-0e4adad2e8ee","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f77fcdb-668b-4463-b5ae-0e4adad2e8ee","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:46.028310860Z"}]},"request_id":"31dfd2e2-118f-4aa6-b83c-d957e156687c","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213686.7379327} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"fb4dcd70-442a-11ef-8685-a1e9f27e6f28","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a70f06b-ff2c-4a4e-9abf-c9d0503f9109","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a70f06b-ff2c-4a4e-9abf-c9d0503f9109","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:46.086626040Z"}]},"request_id":"4f59414a-6158-4d76-8cdb-3c2b3bb7ebe2","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213686.7391357} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"fb4e1b90-442a-11ef-8685-a1e9f27e6f28","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fb4dcd70-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/3f77fcdb-668b-4463-b5ae-0e4adad2e8ee? 200 16ms","method":"GET","requestID":"fb4dcd70-442a-11ef-8685-a1e9f27e6f28","responseTime":16,"status":200,"url":"/devices/3f77fcdb-668b-4463-b5ae-0e4adad2e8ee?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fb4e1b90-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/7a70f06b-ff2c-4a4e-9abf-c9d0503f9109? 200 15ms","method":"GET","requestID":"fb4e1b90-442a-11ef-8685-a1e9f27e6f28","responseTime":15,"status":200,"url":"/devices/7a70f06b-ff2c-4a4e-9abf-c9d0503f9109?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/075d9734-30ed-449a-be05-3c3205624d62"},"level":"info","message":"Setting up experiment","requestID":"9a4cbabc2a60564e0c26d967cf46356c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/075d9734-30ed-449a-be05-3c3205624d62"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"9a4cbabc2a60564e0c26d967cf46356c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/075d9734-30ed-449a-be05-3c3205624d62"},"level":"info","message":"Successfully locked booking for experiment","requestID":"9a4cbabc2a60564e0c26d967cf46356c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/075d9734-30ed-449a-be05-3c3205624d62"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"9a4cbabc2a60564e0c26d967cf46356c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/075d9734-30ed-449a-be05-3c3205624d62"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"9a4cbabc2a60564e0c26d967cf46356c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/075d9734-30ed-449a-be05-3c3205624d62"},"level":"info","message":"Attempting to update booking for experiment","requestID":"9a4cbabc2a60564e0c26d967cf46356c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/075d9734-30ed-449a-be05-3c3205624d62"},"level":"info","message":"Successfully updated booking for experiment","requestID":"9a4cbabc2a60564e0c26d967cf46356c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/075d9734-30ed-449a-be05-3c3205624d62"},"level":"info","message":"Successfully set up experiment","requestID":"9a4cbabc2a60564e0c26d967cf46356c"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fb5631e0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fb568000-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fb56a710-442a-11ef-8685-a1e9f27e6f28"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/075d9734-30ed-449a-be05-3c3205624d62"},"level":"info","message":"Successfully running experiment","requestID":"9a4cbabc2a60564e0c26d967cf46356c"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":307,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:46Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":307,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.660641,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:46Z"} authorization-1 | {"client_addr":"127.0.0.1:42068","level":"info","msg":"Received request.","req_id":308,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3f77fcdb-668b-4463-b5ae-0e4adad2e8ee","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"fb5631e0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/3f77fcdb-668b-4463-b5ae-0e4adad2e8ee","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213686,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4Nn0.5gUuc6sUb7PXbUAVghgAWZ5lhzpeIgDwoHJ26eVrzhY"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"fb5631e0-442a-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:42068","level":"info","msg":"Sent response.","req_id":308,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.584688,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:46Z"} authorization-1 | {"client_addr":"127.0.0.1:42070","level":"info","msg":"Received request.","req_id":309,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7a70f06b-ff2c-4a4e-9abf-c9d0503f9109","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"fb568000-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/7a70f06b-ff2c-4a4e-9abf-c9d0503f9109","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213686,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4Nn0.5gUuc6sUb7PXbUAVghgAWZ5lhzpeIgDwoHJ26eVrzhY"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"fb568000-442a-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f77fcdb-668b-4463-b5ae-0e4adad2e8ee","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"422ce257-de6d-47ad-bdc8-c68a7875841c","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213686.7925723} authorization-1 | {"client_addr":"127.0.0.1:42070","level":"info","msg":"Sent response.","req_id":309,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.466214,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3f77fcdb-668b-4463-b5ae-0e4adad2e8ee","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"fb56a710-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3f77fcdb-668b-4463-b5ae-0e4adad2e8ee","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"fb56a710-442a-11ef-8685-a1e9f27e6f28","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f77fcdb-668b-4463-b5ae-0e4adad2e8ee","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f77fcdb-668b-4463-b5ae-0e4adad2e8ee","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:46.028310860Z"}]},"request_id":"fda5d249-7bcd-4c8d-a544-9a937fb6e950","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213686.7982192} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"fb5631e0-442a-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fb56a710-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a70f06b-ff2c-4a4e-9abf-c9d0503f9109","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a70f06b-ff2c-4a4e-9abf-c9d0503f9109","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:46.086626040Z"}]},"request_id":"a9572d12-d202-404d-b32f-0c9c97c014cf","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213686.8023489} device-1 | {"level":"info","message":"POST /devices/3f77fcdb-668b-4463-b5ae-0e4adad2e8ee/signaling 200 18ms","method":"POST","requestID":"fb56a710-442a-11ef-8685-a1e9f27e6f28","responseTime":18,"status":200,"url":"/devices/3f77fcdb-668b-4463-b5ae-0e4adad2e8ee/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"fb568000-442a-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fb5a2980-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fb5631e0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/3f77fcdb-668b-4463-b5ae-0e4adad2e8ee? 200 30ms","method":"GET","requestID":"fb5631e0-442a-11ef-8685-a1e9f27e6f28","responseTime":30,"status":200,"url":"/devices/3f77fcdb-668b-4463-b5ae-0e4adad2e8ee?"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F075d9734-30ed-449a-be05-3c3205624d62#owner@http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F075d9734-30ed-449a-be05-3c3205624d62","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"6d784244-58e9-4462-8cd9-c55b0247ddfb","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213686.8109756} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fb568000-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e85be970-2610-46d0-a1d7-a231744c97d1","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213686.8112342} device-1 | {"level":"info","message":"GET /devices/7a70f06b-ff2c-4a4e-9abf-c9d0503f9109? 200 29ms","method":"GET","requestID":"fb568000-442a-11ef-8685-a1e9f27e6f28","responseTime":29,"status":200,"url":"/devices/7a70f06b-ff2c-4a4e-9abf-c9d0503f9109?"} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"9a4cbabc2a60564e0c26d967cf46356c","responseTime":24,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a70f06b-ff2c-4a4e-9abf-c9d0503f9109","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e7584445-d8b1-4fe4-8442-6c583275e834","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213686.8149257} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":310,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:46Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":310,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.813482,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:46Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fb5b8910-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7a70f06b-ff2c-4a4e-9abf-c9d0503f9109","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"fb5a2980-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7a70f06b-ff2c-4a4e-9abf-c9d0503f9109","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"fb5a2980-442a-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":311,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:46Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fb5a2980-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/7a70f06b-ff2c-4a4e-9abf-c9d0503f9109/signaling 200 13ms","method":"POST","requestID":"fb5a2980-442a-11ef-8685-a1e9f27e6f28","responseTime":13,"status":200,"url":"/devices/7a70f06b-ff2c-4a4e-9abf-c9d0503f9109/signaling"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f77fcdb-668b-4463-b5ae-0e4adad2e8ee","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7d0cad4d-8f86-441f-9670-8376f8ece910","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213686.8230214} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":311,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.022836,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3f77fcdb-668b-4463-b5ae-0e4adad2e8ee","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"fb5b8910-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3f77fcdb-668b-4463-b5ae-0e4adad2e8ee","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"fb5b8910-442a-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/075d9734-30ed-449a-be05-3c3205624d62","user":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"9a4cbabc2a60564e0c26d967cf46356c"} gateway-1 | {"time_local":"17/Jul/2024:10:54:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"785","request_time":"0.140","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9a4cbabc2a60564e0c26d967cf46356c"} experiment-1 | {"level":"info","message":"POST /experiments? 201 133ms","method":"POST","requestID":"9a4cbabc2a60564e0c26d967cf46356c","responseTime":133,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fb5b8910-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/3f77fcdb-668b-4463-b5ae-0e4adad2e8ee/signaling 200 11ms","method":"POST","requestID":"fb5b8910-442a-11ef-8685-a1e9f27e6f28","responseTime":11,"status":200,"url":"/devices/3f77fcdb-668b-4463-b5ae-0e4adad2e8ee/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fb5d84e0-442a-11ef-8685-a1e9f27e6f28"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4Nn0.5gUuc6sUb7PXbUAVghgAWZ5lhzpeIgDwoHJ26eVrzhY","level":"info","message":"auth send jwt","requestID":"f178ed76a8de49d9c63c2cb280ad7707"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f178ed76a8de49d9c63c2cb280ad7707","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f178ed76a8de49d9c63c2cb280ad7707"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":312,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:46Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a70f06b-ff2c-4a4e-9abf-c9d0503f9109","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"56a1218a-ad76-4e28-918e-b7be900061d7","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213686.8356447} authorization-1 | {"client_addr":"127.0.0.1:42068","level":"info","msg":"Received request.","req_id":313,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:46Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":312,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.541268,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7a70f06b-ff2c-4a4e-9abf-c9d0503f9109","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"fb5d84e0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7a70f06b-ff2c-4a4e-9abf-c9d0503f9109","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fb5d84e0-442a-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:42068","level":"info","msg":"Sent response.","req_id":313,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.000283,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3f77fcdb-668b-4463-b5ae-0e4adad2e8ee","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f178ed76a8de49d9c63c2cb280ad7707","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/3f77fcdb-668b-4463-b5ae-0e4adad2e8ee","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213686,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4Nn0.5gUuc6sUb7PXbUAVghgAWZ5lhzpeIgDwoHJ26eVrzhY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f178ed76a8de49d9c63c2cb280ad7707","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fb5d84e0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/7a70f06b-ff2c-4a4e-9abf-c9d0503f9109/signaling 200 11ms","method":"POST","requestID":"fb5d84e0-442a-11ef-8685-a1e9f27e6f28","responseTime":11,"status":200,"url":"/devices/7a70f06b-ff2c-4a4e-9abf-c9d0503f9109/signaling"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f77fcdb-668b-4463-b5ae-0e4adad2e8ee","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f77fcdb-668b-4463-b5ae-0e4adad2e8ee","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:46.028310860Z"}]},"request_id":"cc05b1d1-5cb6-4dc1-9e07-00fbf8fe8a4d","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213686.8426795} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/075d9734-30ed-449a-be05-3c3205624d62"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"9a4cbabc2a60564e0c26d967cf46356c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/075d9734-30ed-449a-be05-3c3205624d62"},"level":"info","message":"Building connection plan","requestID":"9a4cbabc2a60564e0c26d967cf46356c"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"48649618-2659-42ca-9844-b55a9d7e0987"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"1b57b496-9dd2-4b43-a6b8-c6c34581fff7"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/file","uuid":"54f7b8bb-bd03-4b63-9052-5cd1db41ffd2"}]},"level":"info","message":"Built pairwise service configurations","requestID":"9a4cbabc2a60564e0c26d967cf46356c"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/3f77fcdb-668b-4463-b5ae-0e4adad2e8ee"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"url":"http://localhost/devices/7a70f06b-ff2c-4a4e-9abf-c9d0503f9109"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"9a4cbabc2a60564e0c26d967cf46356c"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f178ed76a8de49d9c63c2cb280ad7707","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"fb5fced0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f178ed76a8de49d9c63c2cb280ad7707"} device-1 | {"level":"info","message":"GET /devices/3f77fcdb-668b-4463-b5ae-0e4adad2e8ee? 200 16ms","method":"GET","requestID":"f178ed76a8de49d9c63c2cb280ad7707","responseTime":16,"status":200,"url":"/devices/3f77fcdb-668b-4463-b5ae-0e4adad2e8ee?"} gateway-1 | {"time_local":"17/Jul/2024:10:54:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3f77fcdb-668b-4463-b5ae-0e4adad2e8ee? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f178ed76a8de49d9c63c2cb280ad7707"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":314,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:46Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":314,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.103915,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:46Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"fb5fced0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213686,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4Nn0.5gUuc6sUb7PXbUAVghgAWZ5lhzpeIgDwoHJ26eVrzhY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"fb5fced0-442a-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4Nn0.5gUuc6sUb7PXbUAVghgAWZ5lhzpeIgDwoHJ26eVrzhY","level":"info","message":"auth send jwt","requestID":"502eb3b804a7d8fbc559fb84bb0a2896"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"502eb3b804a7d8fbc559fb84bb0a2896","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"502eb3b804a7d8fbc559fb84bb0a2896"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":315,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:46Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":315,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.138283,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7a70f06b-ff2c-4a4e-9abf-c9d0503f9109","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"502eb3b804a7d8fbc559fb84bb0a2896","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/7a70f06b-ff2c-4a4e-9abf-c9d0503f9109","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213686,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4Nn0.5gUuc6sUb7PXbUAVghgAWZ5lhzpeIgDwoHJ26eVrzhY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"502eb3b804a7d8fbc559fb84bb0a2896","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"c6876f21-4a96-41ef-b11c-9776e5ce0e98","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213686.8639178} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"132b6572-77cd-47c8-bfa9-43f042fb6ab2","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213686.8641057} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"fb5fced0-442a-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a70f06b-ff2c-4a4e-9abf-c9d0503f9109","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a70f06b-ff2c-4a4e-9abf-c9d0503f9109","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:46.086626040Z"}]},"request_id":"e5057040-2e93-4a89-9ac2-9660cd990d29","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213686.8651736} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"502eb3b804a7d8fbc559fb84bb0a2896","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"502eb3b804a7d8fbc559fb84bb0a2896"} device-1 | {"level":"info","message":"GET /devices/7a70f06b-ff2c-4a4e-9abf-c9d0503f9109? 200 22ms","method":"GET","requestID":"502eb3b804a7d8fbc559fb84bb0a2896","responseTime":22,"status":200,"url":"/devices/7a70f06b-ff2c-4a4e-9abf-c9d0503f9109?"} gateway-1 | {"time_local":"17/Jul/2024:10:54:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7a70f06b-ff2c-4a4e-9abf-c9d0503f9109? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.028","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"502eb3b804a7d8fbc559fb84bb0a2896"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"fb5fced0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"fb5fced0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/9202deb8-dde9-45b4-b6b1-7cb51ce17f6a'","requestID":"fb5fced0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/9202deb8-dde9-45b4-b6b1-7cb51ce17f6a'","requestID":"fb5fced0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"fb5fced0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 33ms","method":"POST","requestID":"fb5fced0-442a-11ef-8685-a1e9f27e6f28","responseTime":33,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"fb5fced0-442a-11ef-8685-a1e9f27e6f28"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/075d9734-30ed-449a-be05-3c3205624d62"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"9a4cbabc2a60564e0c26d967cf46356c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fb69e0f0-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":316,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:46Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f77fcdb-668b-4463-b5ae-0e4adad2e8ee","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a9af2282-16c6-48e3-9992-e9aa965c90aa","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213686.9161525} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":316,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.833075,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3f77fcdb-668b-4463-b5ae-0e4adad2e8ee","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"fb69e0f0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3f77fcdb-668b-4463-b5ae-0e4adad2e8ee","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"fb69e0f0-442a-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fb69e0f0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/3f77fcdb-668b-4463-b5ae-0e4adad2e8ee/signaling 200 9ms","method":"POST","requestID":"fb69e0f0-442a-11ef-8685-a1e9f27e6f28","responseTime":9,"status":200,"url":"/devices/3f77fcdb-668b-4463-b5ae-0e4adad2e8ee/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fb6bb5b0-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":317,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:46Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a70f06b-ff2c-4a4e-9abf-c9d0503f9109","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7ce95c4d-796d-4684-88e0-9a1be8e58916","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213686.9278738} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":317,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.648323,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7a70f06b-ff2c-4a4e-9abf-c9d0503f9109","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"fb6bb5b0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7a70f06b-ff2c-4a4e-9abf-c9d0503f9109","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"fb6bb5b0-442a-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fb6bb5b0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/7a70f06b-ff2c-4a4e-9abf-c9d0503f9109/signaling 200 9ms","method":"POST","requestID":"fb6bb5b0-442a-11ef-8685-a1e9f27e6f28","responseTime":9,"status":200,"url":"/devices/7a70f06b-ff2c-4a4e-9abf-c9d0503f9109/signaling"} device-1 | {"device":"7a70f06b-ff2c-4a4e-9abf-c9d0503f9109","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"9202deb8-dde9-45b4-b6b1-7cb51ce17f6a","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"3f77fcdb-668b-4463-b5ae-0e4adad2e8ee","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"9202deb8-dde9-45b4-b6b1-7cb51ce17f6a","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"3f77fcdb-668b-4463-b5ae-0e4adad2e8ee","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"3f77fcdb-668b-4463-b5ae-0e4adad2e8ee","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"3f77fcdb-668b-4463-b5ae-0e4adad2e8ee","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"3f77fcdb-668b-4463-b5ae-0e4adad2e8ee","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/9202deb8-dde9-45b4-b6b1-7cb51ce17f6a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"9202deb8-dde9-45b4-b6b1-7cb51ce17f6a","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"df0f163f1561f89026970b2c5203dd54","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"df0f163f1561f89026970b2c5203dd54","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connecting","url":"http://localhost/devices/3f77fcdb-668b-4463-b5ae-0e4adad2e8ee"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"new","url":"http://localhost/devices/7a70f06b-ff2c-4a4e-9abf-c9d0503f9109"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/9202deb8-dde9-45b4-b6b1-7cb51ce17f6a"}}},"level":"info","message":"received a callback","requestID":"df0f163f1561f89026970b2c5203dd54"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 6ms","method":"POST","requestID":"df0f163f1561f89026970b2c5203dd54","responseTime":6,"status":200,"url":"/callbacks/experiment"} device-1 | {"device":"7a70f06b-ff2c-4a4e-9abf-c9d0503f9109","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} gateway-1 | {"time_local":"17/Jul/2024:10:54:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.010","http_referrer":"","http_user_agent":"node-fetch","requestID":"df0f163f1561f89026970b2c5203dd54"} device-1 | {"device":"7a70f06b-ff2c-4a4e-9abf-c9d0503f9109","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"7a70f06b-ff2c-4a4e-9abf-c9d0503f9109","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"9202deb8-dde9-45b4-b6b1-7cb51ce17f6a","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"3f77fcdb-668b-4463-b5ae-0e4adad2e8ee","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"7a70f06b-ff2c-4a4e-9abf-c9d0503f9109","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"7a70f06b-ff2c-4a4e-9abf-c9d0503f9109","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"3f77fcdb-668b-4463-b5ae-0e4adad2e8ee","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"9202deb8-dde9-45b4-b6b1-7cb51ce17f6a","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/9202deb8-dde9-45b4-b6b1-7cb51ce17f6a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"9202deb8-dde9-45b4-b6b1-7cb51ce17f6a","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"dcda34d251b4b58de859fda874a629f1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"dcda34d251b4b58de859fda874a629f1","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/3f77fcdb-668b-4463-b5ae-0e4adad2e8ee"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/7a70f06b-ff2c-4a4e-9abf-c9d0503f9109"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/9202deb8-dde9-45b4-b6b1-7cb51ce17f6a"}}},"level":"info","message":"received a callback","requestID":"dcda34d251b4b58de859fda874a629f1"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"fca7df30-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":318,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:48Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F9202deb8-dde9-45b4-b6b1-7cb51ce17f6a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a98cd058-57ba-476f-8756-9884f76e1143","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213689.0006702} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":318,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.240288,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/9202deb8-dde9-45b4-b6b1-7cb51ce17f6a","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"fca7df30-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/9202deb8-dde9-45b4-b6b1-7cb51ce17f6a","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"fca7df30-442a-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"fca7df30-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /peerconnections/9202deb8-dde9-45b4-b6b1-7cb51ce17f6a 200 11ms","method":"GET","requestID":"fca7df30-442a-11ef-8685-a1e9f27e6f28","responseTime":11,"status":200,"url":"/peerconnections/9202deb8-dde9-45b4-b6b1-7cb51ce17f6a"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 38ms","method":"POST","requestID":"dcda34d251b4b58de859fda874a629f1","responseTime":38,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:54:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.041","http_referrer":"","http_user_agent":"node-fetch","requestID":"dcda34d251b4b58de859fda874a629f1"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fcac9a20-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":319,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:49Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f77fcdb-668b-4463-b5ae-0e4adad2e8ee","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"084e4d6a-485c-4f63-88de-a4af45cf1429","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213689.0312526} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":319,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.48411,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3f77fcdb-668b-4463-b5ae-0e4adad2e8ee","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"fcac9a20-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3f77fcdb-668b-4463-b5ae-0e4adad2e8ee","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"fcac9a20-442a-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fcac9a20-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/3f77fcdb-668b-4463-b5ae-0e4adad2e8ee/signaling 200 9ms","method":"POST","requestID":"fcac9a20-442a-11ef-8685-a1e9f27e6f28","responseTime":9,"status":200,"url":"/devices/3f77fcdb-668b-4463-b5ae-0e4adad2e8ee/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fcae47d0-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":320,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:49Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a70f06b-ff2c-4a4e-9abf-c9d0503f9109","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"48c75ecc-fff1-42cf-8b45-d196d5b5a196","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213689.0416727} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":320,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.217847,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7a70f06b-ff2c-4a4e-9abf-c9d0503f9109","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"fcae47d0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7a70f06b-ff2c-4a4e-9abf-c9d0503f9109","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fcae47d0-442a-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fcae47d0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/7a70f06b-ff2c-4a4e-9abf-c9d0503f9109/signaling 200 9ms","method":"POST","requestID":"fcae47d0-442a-11ef-8685-a1e9f27e6f28","responseTime":9,"status":200,"url":"/devices/7a70f06b-ff2c-4a4e-9abf-c9d0503f9109/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4OX0.aMF6wVHWto04S91g-l6JzsmWuVaqb_8-nbfjFD0ugWA","level":"info","message":"auth send jwt","requestID":"2cb1fdea2fb4aa274b14051e53f82630"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"2cb1fdea2fb4aa274b14051e53f82630","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/075d9734-30ed-449a-be05-3c3205624d62","requestID":"2cb1fdea2fb4aa274b14051e53f82630"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":321,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:49Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":321,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.306472,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/075d9734-30ed-449a-be05-3c3205624d62","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"2cb1fdea2fb4aa274b14051e53f82630","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:http://localhost/experiments/075d9734-30ed-449a-be05-3c3205624d62","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213689,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4OX0.aMF6wVHWto04S91g-l6JzsmWuVaqb_8-nbfjFD0ugWA"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"2cb1fdea2fb4aa274b14051e53f82630","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/075d9734-30ed-449a-be05-3c3205624d62","requestID":"2cb1fdea2fb4aa274b14051e53f82630"} experiment-1 | {"level":"info","message":"GET /experiments/075d9734-30ed-449a-be05-3c3205624d62 200 17ms","method":"GET","requestID":"2cb1fdea2fb4aa274b14051e53f82630","responseTime":17,"status":200,"url":"/experiments/075d9734-30ed-449a-be05-3c3205624d62"} gateway-1 | {"time_local":"17/Jul/2024:10:54:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/075d9734-30ed-449a-be05-3c3205624d62 HTTP/1.1","status": "200","body_bytes_sent":"858","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2cb1fdea2fb4aa274b14051e53f82630"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4OX0.aMF6wVHWto04S91g-l6JzsmWuVaqb_8-nbfjFD0ugWA","level":"info","message":"auth send jwt","requestID":"ae82880cf1e49c11351a7b290735b5a6"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"ae82880cf1e49c11351a7b290735b5a6","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/075d9734-30ed-449a-be05-3c3205624d62","requestID":"ae82880cf1e49c11351a7b290735b5a6"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":322,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:49Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":322,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.478721,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:49Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/075d9734-30ed-449a-be05-3c3205624d62","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"ae82880cf1e49c11351a7b290735b5a6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:http://localhost/experiments/075d9734-30ed-449a-be05-3c3205624d62","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213689,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4OX0.aMF6wVHWto04S91g-l6JzsmWuVaqb_8-nbfjFD0ugWA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ae82880cf1e49c11351a7b290735b5a6","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/075d9734-30ed-449a-be05-3c3205624d62"},"level":"info","message":"Attempting to finish experiment","requestID":"ae82880cf1e49c11351a7b290735b5a6"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"fccb45b0-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":323,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:49Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":323,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.794098,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:49Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/9202deb8-dde9-45b4-b6b1-7cb51ce17f6a","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"fccb45b0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"peerconnection:http://localhost/peerconnections/9202deb8-dde9-45b4-b6b1-7cb51ce17f6a","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213689,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4OX0.aMF6wVHWto04S91g-l6JzsmWuVaqb_8-nbfjFD0ugWA"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"fccb45b0-442a-11ef-8685-a1e9f27e6f28","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"device":"3f77fcdb-668b-4463-b5ae-0e4adad2e8ee","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"3f77fcdb-668b-4463-b5ae-0e4adad2e8ee","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"3f77fcdb-668b-4463-b5ae-0e4adad2e8ee","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"7a70f06b-ff2c-4a4e-9abf-c9d0503f9109","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"7a70f06b-ff2c-4a4e-9abf-c9d0503f9109","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"7a70f06b-ff2c-4a4e-9abf-c9d0503f9109","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/9202deb8-dde9-45b4-b6b1-7cb51ce17f6a' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/9202deb8-dde9-45b4-b6b1-7cb51ce17f6a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"9202deb8-dde9-45b4-b6b1-7cb51ce17f6a","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F9202deb8-dde9-45b4-b6b1-7cb51ce17f6a': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F9202deb8-dde9-45b4-b6b1-7cb51ce17f6a","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]},"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":null},"raw_response":{},"request_id":"fcbe3f25-193a-4fae-945b-a3d7c3aa4789","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213689.2537766} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"50f38231-3178-4f86-bb49-e32a2f04b9aa","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213689.2540832} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"bea6163dde59f11c53d6f2555c1d4077","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"bea6163dde59f11c53d6f2555c1d4077","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f60b3dfda1c1c419932edc770f95e338","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/3f77fcdb-668b-4463-b5ae-0e4adad2e8ee"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/7a70f06b-ff2c-4a4e-9abf-c9d0503f9109"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/9202deb8-dde9-45b4-b6b1-7cb51ce17f6a"}}},"level":"info","message":"received a callback","requestID":"bea6163dde59f11c53d6f2555c1d4077"} authentication-1 | {"level":"info","message":"GET /auth 200 0ms","method":"GET","requestID":"f60b3dfda1c1c419932edc770f95e338","responseTime":0,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"fccb45b0-442a-11ef-8685-a1e9f27e6f28","responseTime":9,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/3f77fcdb-668b-4463-b5ae-0e4adad2e8ee"},{"config":{"services":[{"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"http://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/7a70f06b-ff2c-4a4e-9abf-c9d0503f9109"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/9202deb8-dde9-45b4-b6b1-7cb51ce17f6a"}}},"level":"info","message":"received a callback","requestID":"f60b3dfda1c1c419932edc770f95e338"} device-1 | {"data":{"peerconnection":"9202deb8-dde9-45b4-b6b1-7cb51ce17f6a","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"fccb45b0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"DELETE /peerconnections/9202deb8-dde9-45b4-b6b1-7cb51ce17f6a 204 50ms","method":"DELETE","requestID":"fccb45b0-442a-11ef-8685-a1e9f27e6f28","responseTime":50,"status":204,"url":"/peerconnections/9202deb8-dde9-45b4-b6b1-7cb51ce17f6a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/075d9734-30ed-449a-be05-3c3205624d62"},"level":"info","message":"Successfully finished experiment","requestID":"ae82880cf1e49c11351a7b290735b5a6"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fcd6b760-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":324,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:49Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3f77fcdb-668b-4463-b5ae-0e4adad2e8ee","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6cb1acae-8c4b-4f52-8bf2-959141914412","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213689.310607} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":324,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.240856,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3f77fcdb-668b-4463-b5ae-0e4adad2e8ee","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"fcd6b760-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3f77fcdb-668b-4463-b5ae-0e4adad2e8ee","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"fcd6b760-442a-11ef-8685-a1e9f27e6f28","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fcd6b760-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/3f77fcdb-668b-4463-b5ae-0e4adad2e8ee/signaling 200 16ms","method":"POST","requestID":"fcd6b760-442a-11ef-8685-a1e9f27e6f28","responseTime":16,"status":200,"url":"/devices/3f77fcdb-668b-4463-b5ae-0e4adad2e8ee/signaling"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F075d9734-30ed-449a-be05-3c3205624d62': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F075d9734-30ed-449a-be05-3c3205624d62","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]},"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":null},"raw_response":{},"request_id":"d8ee691c-2e7f-46f3-aeb5-d5754f235012","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213689.3181298} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"011404b8-75b7-4b3b-b08f-3a463d0feb9f","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213689.3186917} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"ae82880cf1e49c11351a7b290735b5a6","responseTime":21,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fcd99d90-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":325,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:49Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a70f06b-ff2c-4a4e-9abf-c9d0503f9109","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a9ab13eb-cd03-4ed5-9187-d0ccbe693ee5","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213689.3277526} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":325,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.708167,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7a70f06b-ff2c-4a4e-9abf-c9d0503f9109","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"fcd99d90-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7a70f06b-ff2c-4a4e-9abf-c9d0503f9109","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"fcd99d90-442a-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fcd99d90-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/7a70f06b-ff2c-4a4e-9abf-c9d0503f9109/signaling 200 13ms","method":"POST","requestID":"fcd99d90-442a-11ef-8685-a1e9f27e6f28","responseTime":13,"status":200,"url":"/devices/7a70f06b-ff2c-4a4e-9abf-c9d0503f9109/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/075d9734-30ed-449a-be05-3c3205624d62","requestID":"ae82880cf1e49c11351a7b290735b5a6"} gateway-1 | {"time_local":"17/Jul/2024:10:54:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/075d9734-30ed-449a-be05-3c3205624d62 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.183","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ae82880cf1e49c11351a7b290735b5a6"} gateway-1 | {"time_local":"17/Jul/2024:10:54:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2490","request_time":"2.768","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"794bde72313b5fa485841764a22e3305"} gateway-1 | {"time_local":"17/Jul/2024:10:54:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2490","request_time":"2.758","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"e27695d7d1c4a6e4d8ecd101e3f78af2"} experiment-1 | {"level":"info","message":"DELETE /experiments/075d9734-30ed-449a-be05-3c3205624d62 204 178ms","method":"DELETE","requestID":"ae82880cf1e49c11351a7b290735b5a6","responseTime":178,"status":204,"url":"/experiments/075d9734-30ed-449a-be05-3c3205624d62"} gateway-1 | {"time_local":"17/Jul/2024:10:54:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.138","http_referrer":"","http_user_agent":"node-fetch","requestID":"bea6163dde59f11c53d6f2555c1d4077"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 135ms","method":"POST","requestID":"bea6163dde59f11c53d6f2555c1d4077","responseTime":135,"status":200,"url":"/callbacks/experiment"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 135ms","method":"POST","requestID":"f60b3dfda1c1c419932edc770f95e338","responseTime":135,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:54:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.140","http_referrer":"","http_user_agent":"node-fetch","requestID":"f60b3dfda1c1c419932edc770f95e338"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4OX0.aMF6wVHWto04S91g-l6JzsmWuVaqb_8-nbfjFD0ugWA","level":"info","message":"auth send jwt","requestID":"f2ce4ad2b3018ce9dfd622d06181e257"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"f2ce4ad2b3018ce9dfd622d06181e257","responseTime":5,"status":200,"url":"/auth"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/7a70f06b-ff2c-4a4e-9abf-c9d0503f9109' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"f2ce4ad2b3018ce9dfd622d06181e257"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":326,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:49Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":326,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.999773,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:49Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f2ce4ad2b3018ce9dfd622d06181e257","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213689,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4OX0.aMF6wVHWto04S91g-l6JzsmWuVaqb_8-nbfjFD0ugWA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f2ce4ad2b3018ce9dfd622d06181e257","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/3f77fcdb-668b-4463-b5ae-0e4adad2e8ee' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9324f782-b767-4fa4-8d48-37e66ceb3aa0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"ef96ba9d-8699-4058-b0bf-81857b4ec892","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213689.4213228} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f2ce4ad2b3018ce9dfd622d06181e257","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"51997b11-2d3e-4236-8e8d-d9777cb23f89","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213689.4282482} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"f2ce4ad2b3018ce9dfd622d06181e257","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9324f782-b767-4fa4-8d48-37e66ceb3aa0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"4c15d107-530a-4360-af4d-5756d6a30da2","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213689.439891} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fefaff97-797e-4c66-98ff-715502a4cce1","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213689.4401321} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"f2ce4ad2b3018ce9dfd622d06181e257","responseTime":15,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9324f782-b767-4fa4-8d48-37e66ceb3aa0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9324f782-b767-4fa4-8d48-37e66ceb3aa0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:49.439869065Z"}]},"request_id":"850aad58-0cbf-46c6-8ed6-0f603a3d4d44","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213689.4454408} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f2ce4ad2b3018ce9dfd622d06181e257","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"f2ce4ad2b3018ce9dfd622d06181e257"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"f2ce4ad2b3018ce9dfd622d06181e257","responseTime":47,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"17/Jul/2024:10:54:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.056","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f2ce4ad2b3018ce9dfd622d06181e257"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4OX0.aMF6wVHWto04S91g-l6JzsmWuVaqb_8-nbfjFD0ugWA","level":"info","message":"auth send jwt","requestID":"845c25aa53fde8b2688e1d3f4e8a5b98"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"845c25aa53fde8b2688e1d3f4e8a5b98","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"845c25aa53fde8b2688e1d3f4e8a5b98"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":327,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:49Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":327,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.972406,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:49Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"845c25aa53fde8b2688e1d3f4e8a5b98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213689,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY4OX0.aMF6wVHWto04S91g-l6JzsmWuVaqb_8-nbfjFD0ugWA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"845c25aa53fde8b2688e1d3f4e8a5b98","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F354f4a0d-d049-4eb9-8dd2-951274fcf8d2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"0eaa6173-f265-4fcc-88b3-4d28241584ad","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213689.4710577} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"845c25aa53fde8b2688e1d3f4e8a5b98","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"69925dd3-ebfb-4394-b750-dfeb7c123823","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213689.4772818} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"845c25aa53fde8b2688e1d3f4e8a5b98","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F354f4a0d-d049-4eb9-8dd2-951274fcf8d2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"fc2ad45e-8c48-4961-9c64-32748c8a16b7","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213689.4934042} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6437cea3-604d-4468-a09d-9466bf877a4f","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213689.4935257} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"845c25aa53fde8b2688e1d3f4e8a5b98","responseTime":19,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F354f4a0d-d049-4eb9-8dd2-951274fcf8d2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F354f4a0d-d049-4eb9-8dd2-951274fcf8d2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:49.493378230Z"}]},"request_id":"8e3db50b-54bb-4742-80d2-7fef2d54b57c","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213689.4982724} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"845c25aa53fde8b2688e1d3f4e8a5b98","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"845c25aa53fde8b2688e1d3f4e8a5b98"} gateway-1 | {"time_local":"17/Jul/2024:10:54:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"845c25aa53fde8b2688e1d3f4e8a5b98"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"845c25aa53fde8b2688e1d3f4e8a5b98","responseTime":47,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f8a8510ddc4c8bb3b408aff1cfd82c16","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"f8a8510ddc4c8bb3b408aff1cfd82c16","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"17/Jul/2024:10:54:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/354f4a0d-d049-4eb9-8dd2-951274fcf8d2/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"f8a8510ddc4c8bb3b408aff1cfd82c16"} device-1 | {"level":"info","message":"OPTIONS /devices/354f4a0d-d049-4eb9-8dd2-951274fcf8d2/websocket 200 2ms","method":"OPTIONS","requestID":"f8a8510ddc4c8bb3b408aff1cfd82c16","responseTime":2,"status":200,"url":"/devices/354f4a0d-d049-4eb9-8dd2-951274fcf8d2/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5MX0.6YESqJZb5N5XpcCifZtTTH2sYT5XSN5SgVK3RI33a-0","level":"info","message":"auth send jwt","requestID":"e758c50c8b682e03bb73850a3ffd78b4"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e758c50c8b682e03bb73850a3ffd78b4","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"e758c50c8b682e03bb73850a3ffd78b4"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":328,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:51Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":328,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.306931,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:51Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/354f4a0d-d049-4eb9-8dd2-951274fcf8d2","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"e758c50c8b682e03bb73850a3ffd78b4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/354f4a0d-d049-4eb9-8dd2-951274fcf8d2","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213691,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5MX0.6YESqJZb5N5XpcCifZtTTH2sYT5XSN5SgVK3RI33a-0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e758c50c8b682e03bb73850a3ffd78b4","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"53a45ce88553646f9dd42e2102f65676","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"53a45ce88553646f9dd42e2102f65676","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"17/Jul/2024:10:54:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/9324f782-b767-4fa4-8d48-37e66ceb3aa0/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"53a45ce88553646f9dd42e2102f65676"} device-1 | {"level":"info","message":"OPTIONS /devices/9324f782-b767-4fa4-8d48-37e66ceb3aa0/websocket 200 1ms","method":"OPTIONS","requestID":"53a45ce88553646f9dd42e2102f65676","responseTime":1,"status":200,"url":"/devices/9324f782-b767-4fa4-8d48-37e66ceb3aa0/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5MX0.6YESqJZb5N5XpcCifZtTTH2sYT5XSN5SgVK3RI33a-0","level":"info","message":"auth send jwt","requestID":"2a7fca7477bc894446f4d2a24424ab75"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"2a7fca7477bc894446f4d2a24424ab75","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"2a7fca7477bc894446f4d2a24424ab75"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"e758c50c8b682e03bb73850a3ffd78b4"} gateway-1 | {"time_local":"17/Jul/2024:10:54:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/354f4a0d-d049-4eb9-8dd2-951274fcf8d2/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.029","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"e758c50c8b682e03bb73850a3ffd78b4"} device-1 | {"level":"info","message":"POST /devices/354f4a0d-d049-4eb9-8dd2-951274fcf8d2/websocket 200 23ms","method":"POST","requestID":"e758c50c8b682e03bb73850a3ffd78b4","responseTime":23,"status":200,"url":"/devices/354f4a0d-d049-4eb9-8dd2-951274fcf8d2/websocket"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":329,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:51Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":329,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.788113,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:51Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9324f782-b767-4fa4-8d48-37e66ceb3aa0","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"2a7fca7477bc894446f4d2a24424ab75","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/9324f782-b767-4fa4-8d48-37e66ceb3aa0","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213691,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5MX0.6YESqJZb5N5XpcCifZtTTH2sYT5XSN5SgVK3RI33a-0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"2a7fca7477bc894446f4d2a24424ab75","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"2a7fca7477bc894446f4d2a24424ab75"} gateway-1 | {"time_local":"17/Jul/2024:10:54:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/9324f782-b767-4fa4-8d48-37e66ceb3aa0/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.021","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"2a7fca7477bc894446f4d2a24424ab75"} device-1 | {"level":"info","message":"POST /devices/9324f782-b767-4fa4-8d48-37e66ceb3aa0/websocket 200 17ms","method":"POST","requestID":"2a7fca7477bc894446f4d2a24424ab75","responseTime":17,"status":200,"url":"/devices/9324f782-b767-4fa4-8d48-37e66ceb3aa0/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/354f4a0d-d049-4eb9-8dd2-951274fcf8d2' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/9324f782-b767-4fa4-8d48-37e66ceb3aa0' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5MX0.6YESqJZb5N5XpcCifZtTTH2sYT5XSN5SgVK3RI33a-0","level":"info","message":"auth send jwt","requestID":"9a978b1b20a87a8a4b24370c518a626f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"9a978b1b20a87a8a4b24370c518a626f","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9a978b1b20a87a8a4b24370c518a626f"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":330,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:51Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":330,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.030023,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9324f782-b767-4fa4-8d48-37e66ceb3aa0","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"9a978b1b20a87a8a4b24370c518a626f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/9324f782-b767-4fa4-8d48-37e66ceb3aa0","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213691,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5MX0.6YESqJZb5N5XpcCifZtTTH2sYT5XSN5SgVK3RI33a-0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9a978b1b20a87a8a4b24370c518a626f","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9324f782-b767-4fa4-8d48-37e66ceb3aa0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9324f782-b767-4fa4-8d48-37e66ceb3aa0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:49.439869065Z"}]},"request_id":"bdf06fe8-b995-4e5b-982e-e4c9cb916145","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213691.5094888} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9a978b1b20a87a8a4b24370c518a626f","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9a978b1b20a87a8a4b24370c518a626f"} gateway-1 | {"time_local":"17/Jul/2024:10:54:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9324f782-b767-4fa4-8d48-37e66ceb3aa0? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9a978b1b20a87a8a4b24370c518a626f"} device-1 | {"level":"info","message":"GET /devices/9324f782-b767-4fa4-8d48-37e66ceb3aa0? 200 14ms","method":"GET","requestID":"9a978b1b20a87a8a4b24370c518a626f","responseTime":14,"status":200,"url":"/devices/9324f782-b767-4fa4-8d48-37e66ceb3aa0?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5MX0.6YESqJZb5N5XpcCifZtTTH2sYT5XSN5SgVK3RI33a-0","level":"info","message":"auth send jwt","requestID":"defca549b7898d85c316880c55224389"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"defca549b7898d85c316880c55224389","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"defca549b7898d85c316880c55224389"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":331,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:51Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":331,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.495608,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/354f4a0d-d049-4eb9-8dd2-951274fcf8d2","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"defca549b7898d85c316880c55224389","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/354f4a0d-d049-4eb9-8dd2-951274fcf8d2","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213691,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5MX0.6YESqJZb5N5XpcCifZtTTH2sYT5XSN5SgVK3RI33a-0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"defca549b7898d85c316880c55224389","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F354f4a0d-d049-4eb9-8dd2-951274fcf8d2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F354f4a0d-d049-4eb9-8dd2-951274fcf8d2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:49.493378230Z"}]},"request_id":"fc632738-f34a-437c-8054-cbd0f4064cff","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213691.533074} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"defca549b7898d85c316880c55224389","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"defca549b7898d85c316880c55224389"} gateway-1 | {"time_local":"17/Jul/2024:10:54:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/354f4a0d-d049-4eb9-8dd2-951274fcf8d2? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"defca549b7898d85c316880c55224389"} device-1 | {"level":"info","message":"GET /devices/354f4a0d-d049-4eb9-8dd2-951274fcf8d2? 200 17ms","method":"GET","requestID":"defca549b7898d85c316880c55224389","responseTime":17,"status":200,"url":"/devices/354f4a0d-d049-4eb9-8dd2-951274fcf8d2?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5MX0.6YESqJZb5N5XpcCifZtTTH2sYT5XSN5SgVK3RI33a-0","level":"info","message":"auth send jwt","requestID":"b2d8b3636afb79ebe6af2ef12419bdc5"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b2d8b3636afb79ebe6af2ef12419bdc5","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"b2d8b3636afb79ebe6af2ef12419bdc5"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":332,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:51Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":332,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.079385,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:51Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"b2d8b3636afb79ebe6af2ef12419bdc5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213691,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5MX0.6YESqJZb5N5XpcCifZtTTH2sYT5XSN5SgVK3RI33a-0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b2d8b3636afb79ebe6af2ef12419bdc5","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d411685a-15a7-472e-b7fc-c0f73ae4d87a"},"level":"info","message":"Attempting to run experiment","requestID":"b2d8b3636afb79ebe6af2ef12419bdc5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d411685a-15a7-472e-b7fc-c0f73ae4d87a"},"level":"info","message":"Attempting to book experiment","requestID":"b2d8b3636afb79ebe6af2ef12419bdc5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d411685a-15a7-472e-b7fc-c0f73ae4d87a"},"level":"info","message":"Successfully booked experiment","requestID":"b2d8b3636afb79ebe6af2ef12419bdc5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fe336130-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fe338840-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":333,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:51Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":333,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.100918,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9324f782-b767-4fa4-8d48-37e66ceb3aa0","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"fe336130-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/9324f782-b767-4fa4-8d48-37e66ceb3aa0","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213691,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5MX0.6YESqJZb5N5XpcCifZtTTH2sYT5XSN5SgVK3RI33a-0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fe336130-442a-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:36682","level":"info","msg":"Received request.","req_id":334,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:51Z"} authorization-1 | {"client_addr":"127.0.0.1:36682","level":"info","msg":"Sent response.","req_id":334,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.694578,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/354f4a0d-d049-4eb9-8dd2-951274fcf8d2","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"fe338840-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/354f4a0d-d049-4eb9-8dd2-951274fcf8d2","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213691,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5MX0.6YESqJZb5N5XpcCifZtTTH2sYT5XSN5SgVK3RI33a-0"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"fe338840-442a-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9324f782-b767-4fa4-8d48-37e66ceb3aa0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9324f782-b767-4fa4-8d48-37e66ceb3aa0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:49.439869065Z"}]},"request_id":"202f4a81-0dfd-4d05-aed8-448cfaec016e","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213691.5977192} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"fe336130-442a-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F354f4a0d-d049-4eb9-8dd2-951274fcf8d2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F354f4a0d-d049-4eb9-8dd2-951274fcf8d2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:49.493378230Z"}]},"request_id":"5c5f95a0-c5e7-48f5-8422-183afc8e8572","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213691.602041} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"fe338840-442a-11ef-8685-a1e9f27e6f28","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fe336130-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/9324f782-b767-4fa4-8d48-37e66ceb3aa0? 200 16ms","method":"GET","requestID":"fe336130-442a-11ef-8685-a1e9f27e6f28","responseTime":16,"status":200,"url":"/devices/9324f782-b767-4fa4-8d48-37e66ceb3aa0?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fe338840-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/354f4a0d-d049-4eb9-8dd2-951274fcf8d2? 200 20ms","method":"GET","requestID":"fe338840-442a-11ef-8685-a1e9f27e6f28","responseTime":20,"status":200,"url":"/devices/354f4a0d-d049-4eb9-8dd2-951274fcf8d2?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d411685a-15a7-472e-b7fc-c0f73ae4d87a"},"level":"info","message":"Setting up experiment","requestID":"b2d8b3636afb79ebe6af2ef12419bdc5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d411685a-15a7-472e-b7fc-c0f73ae4d87a"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"b2d8b3636afb79ebe6af2ef12419bdc5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d411685a-15a7-472e-b7fc-c0f73ae4d87a"},"level":"info","message":"Successfully locked booking for experiment","requestID":"b2d8b3636afb79ebe6af2ef12419bdc5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d411685a-15a7-472e-b7fc-c0f73ae4d87a"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"b2d8b3636afb79ebe6af2ef12419bdc5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d411685a-15a7-472e-b7fc-c0f73ae4d87a"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"b2d8b3636afb79ebe6af2ef12419bdc5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d411685a-15a7-472e-b7fc-c0f73ae4d87a"},"level":"info","message":"Attempting to update booking for experiment","requestID":"b2d8b3636afb79ebe6af2ef12419bdc5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d411685a-15a7-472e-b7fc-c0f73ae4d87a"},"level":"info","message":"Successfully updated booking for experiment","requestID":"b2d8b3636afb79ebe6af2ef12419bdc5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d411685a-15a7-472e-b7fc-c0f73ae4d87a"},"level":"info","message":"Successfully set up experiment","requestID":"b2d8b3636afb79ebe6af2ef12419bdc5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fe3ef9f0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fe3f4810-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fe3f9630-442a-11ef-8685-a1e9f27e6f28"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d411685a-15a7-472e-b7fc-c0f73ae4d87a"},"level":"info","message":"Successfully running experiment","requestID":"b2d8b3636afb79ebe6af2ef12419bdc5"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":335,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:51Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":335,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.885591,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:51Z"} authorization-1 | {"client_addr":"127.0.0.1:36682","level":"info","msg":"Received request.","req_id":336,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9324f782-b767-4fa4-8d48-37e66ceb3aa0","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"fe3ef9f0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/9324f782-b767-4fa4-8d48-37e66ceb3aa0","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213691,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5MX0.6YESqJZb5N5XpcCifZtTTH2sYT5XSN5SgVK3RI33a-0"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"fe3ef9f0-442a-11ef-8685-a1e9f27e6f28","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:36682","level":"info","msg":"Sent response.","req_id":336,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.908171,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/354f4a0d-d049-4eb9-8dd2-951274fcf8d2","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"fe3f4810-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/354f4a0d-d049-4eb9-8dd2-951274fcf8d2","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213691,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5MX0.6YESqJZb5N5XpcCifZtTTH2sYT5XSN5SgVK3RI33a-0"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"fe3f4810-442a-11ef-8685-a1e9f27e6f28","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F354f4a0d-d049-4eb9-8dd2-951274fcf8d2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F354f4a0d-d049-4eb9-8dd2-951274fcf8d2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:49.493378230Z"}]},"request_id":"aa6f6dbc-5cee-43b2-9412-890eac8e9be2","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213691.6825063} authorization-1 | {"client_addr":"127.0.0.1:36688","level":"info","msg":"Received request.","req_id":337,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:51Z"} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"fe3f4810-442a-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9324f782-b767-4fa4-8d48-37e66ceb3aa0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e4cc67b7-60f8-4086-8499-b850ef2f7426","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213691.686379} authorization-1 | {"client_addr":"127.0.0.1:36688","level":"info","msg":"Sent response.","req_id":337,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.314396,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:51Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9324f782-b767-4fa4-8d48-37e66ceb3aa0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9324f782-b767-4fa4-8d48-37e66ceb3aa0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:49.439869065Z"}]},"request_id":"e0dac319-7429-4590-a67a-97034c7ecc91","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213691.687907} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9324f782-b767-4fa4-8d48-37e66ceb3aa0","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"fe3f9630-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9324f782-b767-4fa4-8d48-37e66ceb3aa0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 19ms","method":"POST","requestID":"fe3f9630-442a-11ef-8685-a1e9f27e6f28","responseTime":19,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"fe3ef9f0-442a-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd411685a-15a7-472e-b7fc-c0f73ae4d87a#owner@http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd411685a-15a7-472e-b7fc-c0f73ae4d87a","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"a58b82dc-09f1-453e-9be0-ec8d7fab59e6","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213691.6950607} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c16278ea-b385-40cd-9543-c32bb8a87a64","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213691.6953459} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"b2d8b3636afb79ebe6af2ef12419bdc5","responseTime":22,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fe3f4810-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/354f4a0d-d049-4eb9-8dd2-951274fcf8d2? 200 38ms","method":"GET","requestID":"fe3f4810-442a-11ef-8685-a1e9f27e6f28","responseTime":38,"status":200,"url":"/devices/354f4a0d-d049-4eb9-8dd2-951274fcf8d2?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fe3f9630-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/9324f782-b767-4fa4-8d48-37e66ceb3aa0/signaling 200 36ms","method":"POST","requestID":"fe3f9630-442a-11ef-8685-a1e9f27e6f28","responseTime":36,"status":200,"url":"/devices/9324f782-b767-4fa4-8d48-37e66ceb3aa0/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fe3ef9f0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/9324f782-b767-4fa4-8d48-37e66ceb3aa0? 200 41ms","method":"GET","requestID":"fe3ef9f0-442a-11ef-8685-a1e9f27e6f28","responseTime":41,"status":200,"url":"/devices/9324f782-b767-4fa4-8d48-37e66ceb3aa0?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fe469b10-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":338,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:51Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F354f4a0d-d049-4eb9-8dd2-951274fcf8d2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f1e710af-2b48-4533-8211-af4cf209cf97","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213691.7185993} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fe475e60-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":338,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.108766,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:51Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/d411685a-15a7-472e-b7fc-c0f73ae4d87a","user":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"b2d8b3636afb79ebe6af2ef12419bdc5"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/354f4a0d-d049-4eb9-8dd2-951274fcf8d2","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"fe469b10-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/354f4a0d-d049-4eb9-8dd2-951274fcf8d2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} gateway-1 | {"time_local":"17/Jul/2024:10:54:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1287","request_time":"0.179","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b2d8b3636afb79ebe6af2ef12419bdc5"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"fe469b10-442a-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"POST /experiments? 201 174ms","method":"POST","requestID":"b2d8b3636afb79ebe6af2ef12419bdc5","responseTime":174,"status":201,"url":"/experiments?"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":339,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:51Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fe469b10-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/354f4a0d-d049-4eb9-8dd2-951274fcf8d2/signaling 200 11ms","method":"POST","requestID":"fe469b10-442a-11ef-8685-a1e9f27e6f28","responseTime":11,"status":200,"url":"/devices/354f4a0d-d049-4eb9-8dd2-951274fcf8d2/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5MX0.6YESqJZb5N5XpcCifZtTTH2sYT5XSN5SgVK3RI33a-0","level":"info","message":"auth send jwt","requestID":"34ce1d9563c731af1de1fade334a8651"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9324f782-b767-4fa4-8d48-37e66ceb3aa0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"26d3189c-89bf-41fd-94f2-bdb45304b333","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213691.7270126} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"34ce1d9563c731af1de1fade334a8651","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":339,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.490991,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:51Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"34ce1d9563c731af1de1fade334a8651"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9324f782-b767-4fa4-8d48-37e66ceb3aa0","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"fe475e60-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9324f782-b767-4fa4-8d48-37e66ceb3aa0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"fe475e60-442a-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":340,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:51Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fe475e60-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":340,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.042378,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:51Z"} device-1 | {"level":"info","message":"POST /devices/9324f782-b767-4fa4-8d48-37e66ceb3aa0/signaling 200 13ms","method":"POST","requestID":"fe475e60-442a-11ef-8685-a1e9f27e6f28","responseTime":13,"status":200,"url":"/devices/9324f782-b767-4fa4-8d48-37e66ceb3aa0/signaling"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9324f782-b767-4fa4-8d48-37e66ceb3aa0","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"34ce1d9563c731af1de1fade334a8651","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/9324f782-b767-4fa4-8d48-37e66ceb3aa0","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213691,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5MX0.6YESqJZb5N5XpcCifZtTTH2sYT5XSN5SgVK3RI33a-0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"34ce1d9563c731af1de1fade334a8651","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fe49cf60-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9324f782-b767-4fa4-8d48-37e66ceb3aa0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9324f782-b767-4fa4-8d48-37e66ceb3aa0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:49.439869065Z"}]},"request_id":"5d487c74-d6ea-439b-aab4-a51cf15c4a02","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213691.7357254} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"34ce1d9563c731af1de1fade334a8651","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":341,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:51Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F354f4a0d-d049-4eb9-8dd2-951274fcf8d2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1a78b36c-3bd9-43fb-9ffc-cd683b242616","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213691.7380383} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":341,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.40439,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:51Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"34ce1d9563c731af1de1fade334a8651"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/354f4a0d-d049-4eb9-8dd2-951274fcf8d2","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"fe49cf60-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/354f4a0d-d049-4eb9-8dd2-951274fcf8d2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"fe49cf60-442a-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"17/Jul/2024:10:54:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9324f782-b767-4fa4-8d48-37e66ceb3aa0? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"34ce1d9563c731af1de1fade334a8651"} device-1 | {"level":"info","message":"GET /devices/9324f782-b767-4fa4-8d48-37e66ceb3aa0? 200 13ms","method":"GET","requestID":"34ce1d9563c731af1de1fade334a8651","responseTime":13,"status":200,"url":"/devices/9324f782-b767-4fa4-8d48-37e66ceb3aa0?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fe49cf60-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/354f4a0d-d049-4eb9-8dd2-951274fcf8d2/signaling 200 9ms","method":"POST","requestID":"fe49cf60-442a-11ef-8685-a1e9f27e6f28","responseTime":9,"status":200,"url":"/devices/354f4a0d-d049-4eb9-8dd2-951274fcf8d2/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d411685a-15a7-472e-b7fc-c0f73ae4d87a"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"b2d8b3636afb79ebe6af2ef12419bdc5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d411685a-15a7-472e-b7fc-c0f73ae4d87a"},"level":"info","message":"Building connection plan","requestID":"b2d8b3636afb79ebe6af2ef12419bdc5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5MX0.6YESqJZb5N5XpcCifZtTTH2sYT5XSN5SgVK3RI33a-0","level":"info","message":"auth send jwt","requestID":"1dda0b6b851adcd1836379bf70ba510c"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"6fee4746-6612-4b23-8a69-b31fe2d880fa"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"6496bc8c-d92b-4a7f-b491-77c66462f39c"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"c2145aeb-bfd4-4eed-b4be-e25143e04f05"}]},"level":"info","message":"Built pairwise service configurations","requestID":"b2d8b3636afb79ebe6af2ef12419bdc5"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1dda0b6b851adcd1836379bf70ba510c","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/354f4a0d-d049-4eb9-8dd2-951274fcf8d2"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/9324f782-b767-4fa4-8d48-37e66ceb3aa0"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"b2d8b3636afb79ebe6af2ef12419bdc5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1dda0b6b851adcd1836379bf70ba510c"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"fe4bcb30-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":342,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:51Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":342,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.713871,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:51Z"} authorization-1 | {"client_addr":"127.0.0.1:36682","level":"info","msg":"Received request.","req_id":343,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/354f4a0d-d049-4eb9-8dd2-951274fcf8d2","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1dda0b6b851adcd1836379bf70ba510c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/354f4a0d-d049-4eb9-8dd2-951274fcf8d2","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213691,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5MX0.6YESqJZb5N5XpcCifZtTTH2sYT5XSN5SgVK3RI33a-0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1dda0b6b851adcd1836379bf70ba510c","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:36682","level":"info","msg":"Sent response.","req_id":343,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.936611,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:51Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"fe4bcb30-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213691,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5MX0.6YESqJZb5N5XpcCifZtTTH2sYT5XSN5SgVK3RI33a-0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"fe4bcb30-442a-11ef-8685-a1e9f27e6f28","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F354f4a0d-d049-4eb9-8dd2-951274fcf8d2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F354f4a0d-d049-4eb9-8dd2-951274fcf8d2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:49.493378230Z"}]},"request_id":"c5c42896-1c44-46a2-b660-60fb91c9bcaf","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213691.7544336} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1dda0b6b851adcd1836379bf70ba510c","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1dda0b6b851adcd1836379bf70ba510c"} gateway-1 | {"time_local":"17/Jul/2024:10:54:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/354f4a0d-d049-4eb9-8dd2-951274fcf8d2? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1dda0b6b851adcd1836379bf70ba510c"} device-1 | {"level":"info","message":"GET /devices/354f4a0d-d049-4eb9-8dd2-951274fcf8d2? 200 15ms","method":"GET","requestID":"1dda0b6b851adcd1836379bf70ba510c","responseTime":15,"status":200,"url":"/devices/354f4a0d-d049-4eb9-8dd2-951274fcf8d2?"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"94976512-f757-43e7-a3ab-23596375b498","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213691.7630084} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"36647655-8dad-4aa5-af13-abfa09c3c627","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213691.7632604} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"fe4bcb30-442a-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"fe4bcb30-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"fe4bcb30-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/5945c7ac-f003-4482-987b-9a0e64a33f4f'","requestID":"fe4bcb30-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/5945c7ac-f003-4482-987b-9a0e64a33f4f'","requestID":"fe4bcb30-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"fe4bcb30-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 27ms","method":"POST","requestID":"fe4bcb30-442a-11ef-8685-a1e9f27e6f28","responseTime":27,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"fe4bcb30-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/5945c7ac-f003-4482-987b-9a0e64a33f4f","device":"354f4a0d-d049-4eb9-8dd2-951274fcf8d2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":false} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/5945c7ac-f003-4482-987b-9a0e64a33f4f","device":"9324f782-b767-4fa4-8d48-37e66ceb3aa0","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":true} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d411685a-15a7-472e-b7fc-c0f73ae4d87a"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"b2d8b3636afb79ebe6af2ef12419bdc5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fe542fa0-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":344,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:51Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9324f782-b767-4fa4-8d48-37e66ceb3aa0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e87f4ac2-84d7-446b-88bb-78f7a91ffa2d","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213691.806898} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":344,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.221093,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9324f782-b767-4fa4-8d48-37e66ceb3aa0","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"fe542fa0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9324f782-b767-4fa4-8d48-37e66ceb3aa0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fe542fa0-442a-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fe542fa0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/9324f782-b767-4fa4-8d48-37e66ceb3aa0/signaling 200 10ms","method":"POST","requestID":"fe542fa0-442a-11ef-8685-a1e9f27e6f28","responseTime":10,"status":200,"url":"/devices/9324f782-b767-4fa4-8d48-37e66ceb3aa0/signaling"} device-1 | {"device":"354f4a0d-d049-4eb9-8dd2-951274fcf8d2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"354f4a0d-d049-4eb9-8dd2-951274fcf8d2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fe562b70-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"device":"9324f782-b767-4fa4-8d48-37e66ceb3aa0","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"9324f782-b767-4fa4-8d48-37e66ceb3aa0","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":345,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:51Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F354f4a0d-d049-4eb9-8dd2-951274fcf8d2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"679ba29c-70fb-40cc-9cee-6f03daedf1d3","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213691.8199103} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":345,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.36678,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/354f4a0d-d049-4eb9-8dd2-951274fcf8d2","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"fe562b70-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/354f4a0d-d049-4eb9-8dd2-951274fcf8d2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fe562b70-442a-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fe562b70-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/354f4a0d-d049-4eb9-8dd2-951274fcf8d2/signaling 200 10ms","method":"POST","requestID":"fe562b70-442a-11ef-8685-a1e9f27e6f28","responseTime":10,"status":200,"url":"/devices/354f4a0d-d049-4eb9-8dd2-951274fcf8d2/signaling"} device-1 | {"content":{"sdp":"v=0\r\no=- 6826601715708148340 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:bY3P\r\na=ice-pwd:Il1FHdbj3Agx0drBlmQrzw/c\r\na=ice-options:trickle\r\na=fingerprint:sha-256 6A:13:1C:0A:48:CE:A7:6F:34:5C:26:01:88:E1:51:4B:22:EE:16:45:D7:47:27:81:5F:87:B9:FB:44:24:75:E3\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"9324f782-b767-4fa4-8d48-37e66ceb3aa0","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 6396205319335483567 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:CB4w\r\na=ice-pwd:qQinBesGI7fqIPvwoz0hfazL\r\na=ice-options:trickle\r\na=fingerprint:sha-256 29:6B:FD:11:EC:AA:42:BC:56:60:1F:1C:F6:27:8D:45:2E:EC:F0:39:5F:5E:54:3E:09:CD:E1:13:3E:3B:C4:0D\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"354f4a0d-d049-4eb9-8dd2-951274fcf8d2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:471859530 1 udp 2113937151 d46f490b-7f2d-4b8e-9189-928ee0db3612.local 44705 typ host generation 0 ufrag CB4w network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"354f4a0d-d049-4eb9-8dd2-951274fcf8d2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2551016245 1 udp 1677729535 141.24.211.56 44705 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag CB4w network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"354f4a0d-d049-4eb9-8dd2-951274fcf8d2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/354f4a0d-d049-4eb9-8dd2-951274fcf8d2'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/354f4a0d-d049-4eb9-8dd2-951274fcf8d2'"} device-1 | {"content":{"candidate":"candidate:2738209160 1 udp 2113937151 0f04c284-9364-4308-b7cc-9d2cb86f695d.local 50697 typ host generation 0 ufrag bY3P network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"9324f782-b767-4fa4-8d48-37e66ceb3aa0","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:807297179 1 udp 1677729535 141.24.211.56 50697 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag bY3P network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"9324f782-b767-4fa4-8d48-37e66ceb3aa0","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/9324f782-b767-4fa4-8d48-37e66ceb3aa0'"} device-1 | {"device":"9324f782-b767-4fa4-8d48-37e66ceb3aa0","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"354f4a0d-d049-4eb9-8dd2-951274fcf8d2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/5945c7ac-f003-4482-987b-9a0e64a33f4f' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"5945c7ac-f003-4482-987b-9a0e64a33f4f","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"9324f782-b767-4fa4-8d48-37e66ceb3aa0","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"354f4a0d-d049-4eb9-8dd2-951274fcf8d2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"354f4a0d-d049-4eb9-8dd2-951274fcf8d2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0615168a034919252c99d0b11d485a15","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"0615168a034919252c99d0b11d485a15","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/354f4a0d-d049-4eb9-8dd2-951274fcf8d2"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/9324f782-b767-4fa4-8d48-37e66ceb3aa0"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/5945c7ac-f003-4482-987b-9a0e64a33f4f"}}},"level":"info","message":"received a callback","requestID":"0615168a034919252c99d0b11d485a15"} device-1 | {"device":"9324f782-b767-4fa4-8d48-37e66ceb3aa0","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 6ms","method":"POST","requestID":"0615168a034919252c99d0b11d485a15","responseTime":6,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:54:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.010","http_referrer":"","http_user_agent":"node-fetch","requestID":"0615168a034919252c99d0b11d485a15"} device-1 | {"device":"354f4a0d-d049-4eb9-8dd2-951274fcf8d2","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"5945c7ac-f003-4482-987b-9a0e64a33f4f","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"5945c7ac-f003-4482-987b-9a0e64a33f4f","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/5945c7ac-f003-4482-987b-9a0e64a33f4f' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"5945c7ac-f003-4482-987b-9a0e64a33f4f","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5485facf515702f20b2a206a42d0130d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"5485facf515702f20b2a206a42d0130d","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/354f4a0d-d049-4eb9-8dd2-951274fcf8d2"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/9324f782-b767-4fa4-8d48-37e66ceb3aa0"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/5945c7ac-f003-4482-987b-9a0e64a33f4f"}}},"level":"info","message":"received a callback","requestID":"5485facf515702f20b2a206a42d0130d"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"fe614f00-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":346,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:51Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F5945c7ac-f003-4482-987b-9a0e64a33f4f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"37ace2f1-3605-4ae6-8af4-39859ae943f2","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213691.8926897} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":346,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.108539,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/5945c7ac-f003-4482-987b-9a0e64a33f4f","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"fe614f00-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/5945c7ac-f003-4482-987b-9a0e64a33f4f","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"fe614f00-442a-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"fe614f00-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /peerconnections/5945c7ac-f003-4482-987b-9a0e64a33f4f 200 8ms","method":"GET","requestID":"fe614f00-442a-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/peerconnections/5945c7ac-f003-4482-987b-9a0e64a33f4f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 31ms","method":"POST","requestID":"5485facf515702f20b2a206a42d0130d","responseTime":31,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:54:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.034","http_referrer":"","http_user_agent":"node-fetch","requestID":"5485facf515702f20b2a206a42d0130d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fe6594c0-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":347,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:51Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F354f4a0d-d049-4eb9-8dd2-951274fcf8d2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bb3f45e6-1f27-4b62-aecc-5b5ec24fb764","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213691.920545} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":347,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.44399,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/354f4a0d-d049-4eb9-8dd2-951274fcf8d2","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"fe6594c0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/354f4a0d-d049-4eb9-8dd2-951274fcf8d2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fe6594c0-442a-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fe6594c0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/354f4a0d-d049-4eb9-8dd2-951274fcf8d2/signaling 200 8ms","method":"POST","requestID":"fe6594c0-442a-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/devices/354f4a0d-d049-4eb9-8dd2-951274fcf8d2/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fe671b60-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":348,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:51Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9324f782-b767-4fa4-8d48-37e66ceb3aa0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"32db529e-26d8-4011-b838-7488fab56fd5","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213691.9304943} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":348,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.101564,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9324f782-b767-4fa4-8d48-37e66ceb3aa0","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"fe671b60-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9324f782-b767-4fa4-8d48-37e66ceb3aa0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fe671b60-442a-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fe671b60-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/9324f782-b767-4fa4-8d48-37e66ceb3aa0/signaling 200 8ms","method":"POST","requestID":"fe671b60-442a-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/devices/9324f782-b767-4fa4-8d48-37e66ceb3aa0/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5MX0.6YESqJZb5N5XpcCifZtTTH2sYT5XSN5SgVK3RI33a-0","level":"info","message":"auth send jwt","requestID":"2427af9a2bb27dae80d195ab64d019cf"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"2427af9a2bb27dae80d195ab64d019cf","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/d411685a-15a7-472e-b7fc-c0f73ae4d87a","requestID":"2427af9a2bb27dae80d195ab64d019cf"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":349,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:51Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":349,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.177065,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/d411685a-15a7-472e-b7fc-c0f73ae4d87a","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"2427af9a2bb27dae80d195ab64d019cf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:http://localhost/experiments/d411685a-15a7-472e-b7fc-c0f73ae4d87a","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213691,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5MX0.6YESqJZb5N5XpcCifZtTTH2sYT5XSN5SgVK3RI33a-0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2427af9a2bb27dae80d195ab64d019cf","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/d411685a-15a7-472e-b7fc-c0f73ae4d87a","requestID":"2427af9a2bb27dae80d195ab64d019cf"} gateway-1 | {"time_local":"17/Jul/2024:10:54:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/d411685a-15a7-472e-b7fc-c0f73ae4d87a HTTP/1.1","status": "200","body_bytes_sent":"1360","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2427af9a2bb27dae80d195ab64d019cf"} experiment-1 | {"level":"info","message":"GET /experiments/d411685a-15a7-472e-b7fc-c0f73ae4d87a 200 10ms","method":"GET","requestID":"2427af9a2bb27dae80d195ab64d019cf","responseTime":10,"status":200,"url":"/experiments/d411685a-15a7-472e-b7fc-c0f73ae4d87a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5MX0.6YESqJZb5N5XpcCifZtTTH2sYT5XSN5SgVK3RI33a-0","level":"info","message":"auth send jwt","requestID":"10d4626f856fed7fec23e29d0719fe44"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"10d4626f856fed7fec23e29d0719fe44","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/d411685a-15a7-472e-b7fc-c0f73ae4d87a","requestID":"10d4626f856fed7fec23e29d0719fe44"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":350,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:51Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":350,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.928807,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:51Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/d411685a-15a7-472e-b7fc-c0f73ae4d87a","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"10d4626f856fed7fec23e29d0719fe44","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:http://localhost/experiments/d411685a-15a7-472e-b7fc-c0f73ae4d87a","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213691,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5MX0.6YESqJZb5N5XpcCifZtTTH2sYT5XSN5SgVK3RI33a-0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"10d4626f856fed7fec23e29d0719fe44","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d411685a-15a7-472e-b7fc-c0f73ae4d87a"},"level":"info","message":"Attempting to finish experiment","requestID":"10d4626f856fed7fec23e29d0719fe44"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"fe704320-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":351,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:51Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":351,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.640276,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:51Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/5945c7ac-f003-4482-987b-9a0e64a33f4f","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"fe704320-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"peerconnection:http://localhost/peerconnections/5945c7ac-f003-4482-987b-9a0e64a33f4f","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213691,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5MX0.6YESqJZb5N5XpcCifZtTTH2sYT5XSN5SgVK3RI33a-0"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"fe704320-442a-11ef-8685-a1e9f27e6f28","responseTime":2,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/5945c7ac-f003-4482-987b-9a0e64a33f4f","device":"354f4a0d-d049-4eb9-8dd2-951274fcf8d2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/5945c7ac-f003-4482-987b-9a0e64a33f4f","device":"9324f782-b767-4fa4-8d48-37e66ceb3aa0","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/5945c7ac-f003-4482-987b-9a0e64a33f4f' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/5945c7ac-f003-4482-987b-9a0e64a33f4f' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"5945c7ac-f003-4482-987b-9a0e64a33f4f","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F5945c7ac-f003-4482-987b-9a0e64a33f4f': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F5945c7ac-f003-4482-987b-9a0e64a33f4f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]},"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":null},"raw_response":{},"request_id":"ba5f2f4f-a8c6-404e-8033-c31eb8f9a514","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213692.0027447} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c716eadf-7933-404d-aa18-761a3499a46a","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213692.002938} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"fe704320-442a-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"81285db6f5456b7b2e96c5540c7faddc","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"81285db6f5456b7b2e96c5540c7faddc","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0d23794df8398f648a7a9a1a28c94e41","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/354f4a0d-d049-4eb9-8dd2-951274fcf8d2"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/9324f782-b767-4fa4-8d48-37e66ceb3aa0"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/5945c7ac-f003-4482-987b-9a0e64a33f4f"}}},"level":"info","message":"received a callback","requestID":"81285db6f5456b7b2e96c5540c7faddc"} authentication-1 | {"level":"info","message":"GET /auth 200 0ms","method":"GET","requestID":"0d23794df8398f648a7a9a1a28c94e41","responseTime":0,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/354f4a0d-d049-4eb9-8dd2-951274fcf8d2"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/9324f782-b767-4fa4-8d48-37e66ceb3aa0"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/5945c7ac-f003-4482-987b-9a0e64a33f4f"}}},"level":"info","message":"received a callback","requestID":"0d23794df8398f648a7a9a1a28c94e41"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"fe704320-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"DELETE /peerconnections/5945c7ac-f003-4482-987b-9a0e64a33f4f 204 35ms","method":"DELETE","requestID":"fe704320-442a-11ef-8685-a1e9f27e6f28","responseTime":35,"status":204,"url":"/peerconnections/5945c7ac-f003-4482-987b-9a0e64a33f4f"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/9324f782-b767-4fa4-8d48-37e66ceb3aa0'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d411685a-15a7-472e-b7fc-c0f73ae4d87a"},"level":"info","message":"Successfully finished experiment","requestID":"10d4626f856fed7fec23e29d0719fe44"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fe77e440-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":352,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:52Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F354f4a0d-d049-4eb9-8dd2-951274fcf8d2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"83c0bccf-c97f-4e50-ba34-840c56b82a1c","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213692.0404053} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":352,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.358809,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/354f4a0d-d049-4eb9-8dd2-951274fcf8d2","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"fe77e440-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/354f4a0d-d049-4eb9-8dd2-951274fcf8d2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fe77e440-442a-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fe77e440-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/354f4a0d-d049-4eb9-8dd2-951274fcf8d2/signaling 200 8ms","method":"POST","requestID":"fe77e440-442a-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/devices/354f4a0d-d049-4eb9-8dd2-951274fcf8d2/signaling"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd411685a-15a7-472e-b7fc-c0f73ae4d87a': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd411685a-15a7-472e-b7fc-c0f73ae4d87a","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]},"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":null},"raw_response":{},"request_id":"12939c6e-504c-4ddb-90a5-3f35de2163c9","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213692.0467718} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"fe7991f0-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"aab24fff-07ff-4c05-827c-9ef773e5a909","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213692.0471106} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"10d4626f856fed7fec23e29d0719fe44","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":353,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:52Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9324f782-b767-4fa4-8d48-37e66ceb3aa0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a936af90-e7be-4789-afbe-d5f53c22b4c4","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213692.0520213} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":353,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.41036,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9324f782-b767-4fa4-8d48-37e66ceb3aa0","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"fe7991f0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9324f782-b767-4fa4-8d48-37e66ceb3aa0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"fe7991f0-442a-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"fe7991f0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/9324f782-b767-4fa4-8d48-37e66ceb3aa0/signaling 200 10ms","method":"POST","requestID":"fe7991f0-442a-11ef-8685-a1e9f27e6f28","responseTime":10,"status":200,"url":"/devices/9324f782-b767-4fa4-8d48-37e66ceb3aa0/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/d411685a-15a7-472e-b7fc-c0f73ae4d87a","requestID":"10d4626f856fed7fec23e29d0719fe44"} gateway-1 | {"time_local":"17/Jul/2024:10:54:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/d411685a-15a7-472e-b7fc-c0f73ae4d87a HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.132","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"10d4626f856fed7fec23e29d0719fe44"} experiment-1 | {"level":"info","message":"DELETE /experiments/d411685a-15a7-472e-b7fc-c0f73ae4d87a 204 129ms","method":"DELETE","requestID":"10d4626f856fed7fec23e29d0719fe44","responseTime":129,"status":204,"url":"/experiments/d411685a-15a7-472e-b7fc-c0f73ae4d87a"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 102ms","method":"POST","requestID":"81285db6f5456b7b2e96c5540c7faddc","responseTime":102,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:54:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.107","http_referrer":"","http_user_agent":"node-fetch","requestID":"81285db6f5456b7b2e96c5540c7faddc"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 102ms","method":"POST","requestID":"0d23794df8398f648a7a9a1a28c94e41","responseTime":102,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:54:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.108","http_referrer":"","http_user_agent":"node-fetch","requestID":"0d23794df8398f648a7a9a1a28c94e41"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5Mn0.zZNz24-he3wWNYEV2JctKhQypGY1ZBm4W1EJNHkKXlI","level":"info","message":"auth send jwt","requestID":"2fbd680eff65f915cd9f16f37eaa0450"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2fbd680eff65f915cd9f16f37eaa0450","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"2fbd680eff65f915cd9f16f37eaa0450"} gateway-1 | {"time_local":"17/Jul/2024:10:54:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2887","request_time":"0.632","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"96ef497672f9b0f7d490bd2323037462"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":354,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:52Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":354,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.949515,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:52Z"} gateway-1 | {"time_local":"17/Jul/2024:10:54:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2885","request_time":"0.650","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"850961b7090a7b01c54d2ba23810dd44"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"2fbd680eff65f915cd9f16f37eaa0450","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213692,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5Mn0.zZNz24-he3wWNYEV2JctKhQypGY1ZBm4W1EJNHkKXlI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2fbd680eff65f915cd9f16f37eaa0450","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/9324f782-b767-4fa4-8d48-37e66ceb3aa0' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fea92b8e6-6f6d-493b-a7a9-acd48fae105b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"5f8e5141-a4a5-4334-af9e-c3df8cbeccce","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213692.1340854} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"2fbd680eff65f915cd9f16f37eaa0450","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/354f4a0d-d049-4eb9-8dd2-951274fcf8d2' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"261322aa-e4c5-4b94-ad09-f116234abd0b","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213692.138794} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"2fbd680eff65f915cd9f16f37eaa0450","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fea92b8e6-6f6d-493b-a7a9-acd48fae105b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"dd9a59c6-8429-41ad-9157-17d774bc379b","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213692.1476054} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"80278271-8a05-4a48-8dba-93fe97fb140e","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213692.1477711} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"2fbd680eff65f915cd9f16f37eaa0450","responseTime":10,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fea92b8e6-6f6d-493b-a7a9-acd48fae105b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fea92b8e6-6f6d-493b-a7a9-acd48fae105b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:52.147587149Z"}]},"request_id":"b76c7ea6-0258-46b7-b23c-e76e6fdad8e0","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213692.151001} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"2fbd680eff65f915cd9f16f37eaa0450","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"2fbd680eff65f915cd9f16f37eaa0450"} gateway-1 | {"time_local":"17/Jul/2024:10:54:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.045","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2fbd680eff65f915cd9f16f37eaa0450"} device-1 | {"level":"info","message":"POST /devices? 201 39ms","method":"POST","requestID":"2fbd680eff65f915cd9f16f37eaa0450","responseTime":39,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5Mn0.zZNz24-he3wWNYEV2JctKhQypGY1ZBm4W1EJNHkKXlI","level":"info","message":"auth send jwt","requestID":"0d437353782c43ad364efc2d8643f804"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"0d437353782c43ad364efc2d8643f804","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"0d437353782c43ad364efc2d8643f804"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":355,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:52Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":355,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.832501,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:52Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0d437353782c43ad364efc2d8643f804","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213692,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5Mn0.zZNz24-he3wWNYEV2JctKhQypGY1ZBm4W1EJNHkKXlI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0d437353782c43ad364efc2d8643f804","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9f4705f-b756-4923-bb26-1d61b923b99e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"5bbf1ce7-5949-4992-b446-d7bbff490689","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213692.177547} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0d437353782c43ad364efc2d8643f804","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0238b794-6406-4ba4-b1af-4d1d4e66b384","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213692.1821835} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"0d437353782c43ad364efc2d8643f804","responseTime":7,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9f4705f-b756-4923-bb26-1d61b923b99e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"2520e01e-7a4d-4a98-8334-ed2e66cd253b","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213692.1914933} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5c06b676-fa62-4e4d-abeb-250615fe9ab5","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213692.1916332} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"0d437353782c43ad364efc2d8643f804","responseTime":12,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9f4705f-b756-4923-bb26-1d61b923b99e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9f4705f-b756-4923-bb26-1d61b923b99e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:52.191473062Z"}]},"request_id":"0e753538-ac03-457a-8ffe-e7dff9afc9ff","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213692.195877} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"0d437353782c43ad364efc2d8643f804","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"0d437353782c43ad364efc2d8643f804"} gateway-1 | {"time_local":"17/Jul/2024:10:54:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.044","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0d437353782c43ad364efc2d8643f804"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"0d437353782c43ad364efc2d8643f804","responseTime":41,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0d1afa54a52ff484dfa5fcb8bffbe8dc","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"0d1afa54a52ff484dfa5fcb8bffbe8dc","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"17/Jul/2024:10:54:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/b9f4705f-b756-4923-bb26-1d61b923b99e/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"0d1afa54a52ff484dfa5fcb8bffbe8dc"} device-1 | {"level":"info","message":"OPTIONS /devices/b9f4705f-b756-4923-bb26-1d61b923b99e/websocket 200 1ms","method":"OPTIONS","requestID":"0d1afa54a52ff484dfa5fcb8bffbe8dc","responseTime":1,"status":200,"url":"/devices/b9f4705f-b756-4923-bb26-1d61b923b99e/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5NH0.4HTbv_DI4pHnZTdMtyZL-ecxm3ROauPpWFDzwapENs4","level":"info","message":"auth send jwt","requestID":"c239dac4e90946ed1db8b9be052081af"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"c239dac4e90946ed1db8b9be052081af","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"c239dac4e90946ed1db8b9be052081af"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":356,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:54Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":356,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.256792,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:54Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b9f4705f-b756-4923-bb26-1d61b923b99e","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"c239dac4e90946ed1db8b9be052081af","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/b9f4705f-b756-4923-bb26-1d61b923b99e","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213694,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5NH0.4HTbv_DI4pHnZTdMtyZL-ecxm3ROauPpWFDzwapENs4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c239dac4e90946ed1db8b9be052081af","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"778a8d44e62e4fa6be517bbcb0987526","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"778a8d44e62e4fa6be517bbcb0987526","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"17/Jul/2024:10:54:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/ea92b8e6-6f6d-493b-a7a9-acd48fae105b/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"778a8d44e62e4fa6be517bbcb0987526"} device-1 | {"level":"info","message":"OPTIONS /devices/ea92b8e6-6f6d-493b-a7a9-acd48fae105b/websocket 200 1ms","method":"OPTIONS","requestID":"778a8d44e62e4fa6be517bbcb0987526","responseTime":1,"status":200,"url":"/devices/ea92b8e6-6f6d-493b-a7a9-acd48fae105b/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"c239dac4e90946ed1db8b9be052081af"} gateway-1 | {"time_local":"17/Jul/2024:10:54:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/b9f4705f-b756-4923-bb26-1d61b923b99e/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.029","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"c239dac4e90946ed1db8b9be052081af"} device-1 | {"level":"info","message":"POST /devices/b9f4705f-b756-4923-bb26-1d61b923b99e/websocket 200 23ms","method":"POST","requestID":"c239dac4e90946ed1db8b9be052081af","responseTime":23,"status":200,"url":"/devices/b9f4705f-b756-4923-bb26-1d61b923b99e/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5NH0.4HTbv_DI4pHnZTdMtyZL-ecxm3ROauPpWFDzwapENs4","level":"info","message":"auth send jwt","requestID":"89a69be98a4d5ef5f41b5537bae25669"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"89a69be98a4d5ef5f41b5537bae25669","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"89a69be98a4d5ef5f41b5537bae25669"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":357,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:54Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":357,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.743864,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:54Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ea92b8e6-6f6d-493b-a7a9-acd48fae105b","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"89a69be98a4d5ef5f41b5537bae25669","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/ea92b8e6-6f6d-493b-a7a9-acd48fae105b","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213694,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5NH0.4HTbv_DI4pHnZTdMtyZL-ecxm3ROauPpWFDzwapENs4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"89a69be98a4d5ef5f41b5537bae25669","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"device 'http://localhost/devices/b9f4705f-b756-4923-bb26-1d61b923b99e' connected"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"89a69be98a4d5ef5f41b5537bae25669"} device-1 | {"level":"info","message":"POST /devices/ea92b8e6-6f6d-493b-a7a9-acd48fae105b/websocket 200 23ms","method":"POST","requestID":"89a69be98a4d5ef5f41b5537bae25669","responseTime":23,"status":200,"url":"/devices/ea92b8e6-6f6d-493b-a7a9-acd48fae105b/websocket"} gateway-1 | {"time_local":"17/Jul/2024:10:54:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/ea92b8e6-6f6d-493b-a7a9-acd48fae105b/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.036","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"89a69be98a4d5ef5f41b5537bae25669"} device-1 | {"level":"info","message":"device 'http://localhost/devices/ea92b8e6-6f6d-493b-a7a9-acd48fae105b' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5NH0.4HTbv_DI4pHnZTdMtyZL-ecxm3ROauPpWFDzwapENs4","level":"info","message":"auth send jwt","requestID":"79369fb27807a4810d73fa8305f820dd"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"79369fb27807a4810d73fa8305f820dd","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"79369fb27807a4810d73fa8305f820dd"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":358,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:54Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":358,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.997155,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ea92b8e6-6f6d-493b-a7a9-acd48fae105b","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"79369fb27807a4810d73fa8305f820dd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/ea92b8e6-6f6d-493b-a7a9-acd48fae105b","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213694,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5NH0.4HTbv_DI4pHnZTdMtyZL-ecxm3ROauPpWFDzwapENs4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"79369fb27807a4810d73fa8305f820dd","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fea92b8e6-6f6d-493b-a7a9-acd48fae105b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fea92b8e6-6f6d-493b-a7a9-acd48fae105b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:52.147587149Z"}]},"request_id":"0438fcd2-1ca3-4218-9485-cf95fb3756d4","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213694.2434986} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"79369fb27807a4810d73fa8305f820dd","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"79369fb27807a4810d73fa8305f820dd"} device-1 | {"level":"info","message":"GET /devices/ea92b8e6-6f6d-493b-a7a9-acd48fae105b? 200 13ms","method":"GET","requestID":"79369fb27807a4810d73fa8305f820dd","responseTime":13,"status":200,"url":"/devices/ea92b8e6-6f6d-493b-a7a9-acd48fae105b?"} gateway-1 | {"time_local":"17/Jul/2024:10:54:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ea92b8e6-6f6d-493b-a7a9-acd48fae105b? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"79369fb27807a4810d73fa8305f820dd"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5NH0.4HTbv_DI4pHnZTdMtyZL-ecxm3ROauPpWFDzwapENs4","level":"info","message":"auth send jwt","requestID":"43181959e988bba2eb86ba9ed72170ec"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"43181959e988bba2eb86ba9ed72170ec","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"43181959e988bba2eb86ba9ed72170ec"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":359,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:54Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":359,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.702831,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b9f4705f-b756-4923-bb26-1d61b923b99e","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"43181959e988bba2eb86ba9ed72170ec","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/b9f4705f-b756-4923-bb26-1d61b923b99e","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213694,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5NH0.4HTbv_DI4pHnZTdMtyZL-ecxm3ROauPpWFDzwapENs4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"43181959e988bba2eb86ba9ed72170ec","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9f4705f-b756-4923-bb26-1d61b923b99e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9f4705f-b756-4923-bb26-1d61b923b99e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:52.191473062Z"}]},"request_id":"6a3f0907-e706-4bad-acb8-1513dbf21401","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213694.2606232} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"43181959e988bba2eb86ba9ed72170ec","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"43181959e988bba2eb86ba9ed72170ec"} gateway-1 | {"time_local":"17/Jul/2024:10:54:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b9f4705f-b756-4923-bb26-1d61b923b99e? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"43181959e988bba2eb86ba9ed72170ec"} device-1 | {"level":"info","message":"GET /devices/b9f4705f-b756-4923-bb26-1d61b923b99e? 200 13ms","method":"GET","requestID":"43181959e988bba2eb86ba9ed72170ec","responseTime":13,"status":200,"url":"/devices/b9f4705f-b756-4923-bb26-1d61b923b99e?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5NH0.4HTbv_DI4pHnZTdMtyZL-ecxm3ROauPpWFDzwapENs4","level":"info","message":"auth send jwt","requestID":"241c0b7280938c8bcbdf9b709988e8ad"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"241c0b7280938c8bcbdf9b709988e8ad","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"241c0b7280938c8bcbdf9b709988e8ad"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":360,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:54Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":360,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.734571,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:54Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"241c0b7280938c8bcbdf9b709988e8ad","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213694,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5NH0.4HTbv_DI4pHnZTdMtyZL-ecxm3ROauPpWFDzwapENs4"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"241c0b7280938c8bcbdf9b709988e8ad","responseTime":2,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cd2541d8-e589-413e-baba-66070bc5f29c"},"level":"info","message":"Attempting to run experiment","requestID":"241c0b7280938c8bcbdf9b709988e8ad"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cd2541d8-e589-413e-baba-66070bc5f29c"},"level":"info","message":"Attempting to book experiment","requestID":"241c0b7280938c8bcbdf9b709988e8ad"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cd2541d8-e589-413e-baba-66070bc5f29c"},"level":"info","message":"Successfully booked experiment","requestID":"241c0b7280938c8bcbdf9b709988e8ad"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ffd1f600-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ffd21d10-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":361,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:54Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":361,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.702146,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:54Z"} authorization-1 | {"client_addr":"127.0.0.1:36682","level":"info","msg":"Received request.","req_id":362,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ea92b8e6-6f6d-493b-a7a9-acd48fae105b","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"ffd1f600-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/ea92b8e6-6f6d-493b-a7a9-acd48fae105b","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213694,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5NH0.4HTbv_DI4pHnZTdMtyZL-ecxm3ROauPpWFDzwapENs4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ffd1f600-442a-11ef-8685-a1e9f27e6f28","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:36682","level":"info","msg":"Sent response.","req_id":362,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.82433,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b9f4705f-b756-4923-bb26-1d61b923b99e","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"ffd21d10-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/b9f4705f-b756-4923-bb26-1d61b923b99e","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213694,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5NH0.4HTbv_DI4pHnZTdMtyZL-ecxm3ROauPpWFDzwapENs4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ffd21d10-442a-11ef-8685-a1e9f27e6f28","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fea92b8e6-6f6d-493b-a7a9-acd48fae105b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fea92b8e6-6f6d-493b-a7a9-acd48fae105b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:52.147587149Z"}]},"request_id":"b0bcd100-7f91-4664-ae70-f78d19e14954","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213694.312556} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"ffd1f600-442a-11ef-8685-a1e9f27e6f28","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9f4705f-b756-4923-bb26-1d61b923b99e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9f4705f-b756-4923-bb26-1d61b923b99e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:52.191473062Z"}]},"request_id":"bb693dee-51da-4bb4-a2a9-a6adbcb76158","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213694.313278} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"ffd21d10-442a-11ef-8685-a1e9f27e6f28","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ffd1f600-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/ea92b8e6-6f6d-493b-a7a9-acd48fae105b? 200 14ms","method":"GET","requestID":"ffd1f600-442a-11ef-8685-a1e9f27e6f28","responseTime":14,"status":200,"url":"/devices/ea92b8e6-6f6d-493b-a7a9-acd48fae105b?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ffd21d10-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/b9f4705f-b756-4923-bb26-1d61b923b99e? 200 14ms","method":"GET","requestID":"ffd21d10-442a-11ef-8685-a1e9f27e6f28","responseTime":14,"status":200,"url":"/devices/b9f4705f-b756-4923-bb26-1d61b923b99e?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cd2541d8-e589-413e-baba-66070bc5f29c"},"level":"info","message":"Setting up experiment","requestID":"241c0b7280938c8bcbdf9b709988e8ad"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cd2541d8-e589-413e-baba-66070bc5f29c"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"241c0b7280938c8bcbdf9b709988e8ad"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cd2541d8-e589-413e-baba-66070bc5f29c"},"level":"info","message":"Successfully locked booking for experiment","requestID":"241c0b7280938c8bcbdf9b709988e8ad"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cd2541d8-e589-413e-baba-66070bc5f29c"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"241c0b7280938c8bcbdf9b709988e8ad"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cd2541d8-e589-413e-baba-66070bc5f29c"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"241c0b7280938c8bcbdf9b709988e8ad"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cd2541d8-e589-413e-baba-66070bc5f29c"},"level":"info","message":"Attempting to update booking for experiment","requestID":"241c0b7280938c8bcbdf9b709988e8ad"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cd2541d8-e589-413e-baba-66070bc5f29c"},"level":"info","message":"Successfully updated booking for experiment","requestID":"241c0b7280938c8bcbdf9b709988e8ad"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cd2541d8-e589-413e-baba-66070bc5f29c"},"level":"info","message":"Successfully set up experiment","requestID":"241c0b7280938c8bcbdf9b709988e8ad"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ffdc2f30-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ffdc7d50-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ffdca460-442a-11ef-8685-a1e9f27e6f28"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cd2541d8-e589-413e-baba-66070bc5f29c"},"level":"info","message":"Successfully running experiment","requestID":"241c0b7280938c8bcbdf9b709988e8ad"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":363,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:54Z"} authorization-1 | {"client_addr":"127.0.0.1:36682","level":"info","msg":"Received request.","req_id":364,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:54Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":363,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.834505,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ea92b8e6-6f6d-493b-a7a9-acd48fae105b","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"ffdc2f30-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/ea92b8e6-6f6d-493b-a7a9-acd48fae105b","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213694,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5NH0.4HTbv_DI4pHnZTdMtyZL-ecxm3ROauPpWFDzwapENs4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ffdc2f30-442a-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:36682","level":"info","msg":"Sent response.","req_id":364,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.871042,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:54Z"} authorization-1 | {"client_addr":"127.0.0.1:36688","level":"info","msg":"Received request.","req_id":365,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b9f4705f-b756-4923-bb26-1d61b923b99e","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"ffdc7d50-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/b9f4705f-b756-4923-bb26-1d61b923b99e","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213694,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5NH0.4HTbv_DI4pHnZTdMtyZL-ecxm3ROauPpWFDzwapENs4"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"ffdc7d50-442a-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:36688","level":"info","msg":"Sent response.","req_id":365,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.726265,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:54Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fea92b8e6-6f6d-493b-a7a9-acd48fae105b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1a2c7011-e321-48a0-a1ff-1fb6f2a4a0b9","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213694.38011} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ea92b8e6-6f6d-493b-a7a9-acd48fae105b","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"ffdca460-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ea92b8e6-6f6d-493b-a7a9-acd48fae105b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"ffdca460-442a-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fea92b8e6-6f6d-493b-a7a9-acd48fae105b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fea92b8e6-6f6d-493b-a7a9-acd48fae105b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:52.147587149Z"}]},"request_id":"64e6225d-877a-49ca-bd67-a48f9d5fe96d","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213694.3838413} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ffdca460-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/ea92b8e6-6f6d-493b-a7a9-acd48fae105b/signaling 200 13ms","method":"POST","requestID":"ffdca460-442a-11ef-8685-a1e9f27e6f28","responseTime":13,"status":200,"url":"/devices/ea92b8e6-6f6d-493b-a7a9-acd48fae105b/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"ffdc2f30-442a-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9f4705f-b756-4923-bb26-1d61b923b99e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9f4705f-b756-4923-bb26-1d61b923b99e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:52.191473062Z"}]},"request_id":"71b89e96-d6cf-41f6-82cb-166e7c985047","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213694.3867772} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ffdc7d50-442a-11ef-8685-a1e9f27e6f28","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ffdf1560-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ffdc2f30-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/ea92b8e6-6f6d-493b-a7a9-acd48fae105b? 200 22ms","method":"GET","requestID":"ffdc2f30-442a-11ef-8685-a1e9f27e6f28","responseTime":22,"status":200,"url":"/devices/ea92b8e6-6f6d-493b-a7a9-acd48fae105b?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ffdc7d50-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/b9f4705f-b756-4923-bb26-1d61b923b99e? 200 21ms","method":"GET","requestID":"ffdc7d50-442a-11ef-8685-a1e9f27e6f28","responseTime":21,"status":200,"url":"/devices/b9f4705f-b756-4923-bb26-1d61b923b99e?"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":366,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:54Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fcd2541d8-e589-413e-baba-66070bc5f29c#owner@http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fcd2541d8-e589-413e-baba-66070bc5f29c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"b2663618-f00d-418a-9b0d-3dd4d322a179","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213694.3954816} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9f4705f-b756-4923-bb26-1d61b923b99e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"71c6b272-6daf-45c4-979f-5d9b4a3d0535","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213694.3955588} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e8de6538-4b40-4ac6-b61d-627920299118","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213694.3958395} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"241c0b7280938c8bcbdf9b709988e8ad","responseTime":18,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ffe026d0-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":366,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.311076,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b9f4705f-b756-4923-bb26-1d61b923b99e","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"ffdf1560-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b9f4705f-b756-4923-bb26-1d61b923b99e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ffdf1560-442a-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":367,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:54Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ffdf1560-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/b9f4705f-b756-4923-bb26-1d61b923b99e/signaling 200 12ms","method":"POST","requestID":"ffdf1560-442a-11ef-8685-a1e9f27e6f28","responseTime":12,"status":200,"url":"/devices/b9f4705f-b756-4923-bb26-1d61b923b99e/signaling"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fea92b8e6-6f6d-493b-a7a9-acd48fae105b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8074d9f3-1929-4e7c-a1f1-ce052d4ac2e6","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213694.402415} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":367,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.870291,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ea92b8e6-6f6d-493b-a7a9-acd48fae105b","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"ffe026d0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ea92b8e6-6f6d-493b-a7a9-acd48fae105b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ffe026d0-442a-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/cd2541d8-e589-413e-baba-66070bc5f29c","user":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"241c0b7280938c8bcbdf9b709988e8ad"} gateway-1 | {"time_local":"17/Jul/2024:10:54:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1287","request_time":"0.139","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"241c0b7280938c8bcbdf9b709988e8ad"} experiment-1 | {"level":"info","message":"POST /experiments? 201 135ms","method":"POST","requestID":"241c0b7280938c8bcbdf9b709988e8ad","responseTime":135,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ffe026d0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/ea92b8e6-6f6d-493b-a7a9-acd48fae105b/signaling 200 11ms","method":"POST","requestID":"ffe026d0-442a-11ef-8685-a1e9f27e6f28","responseTime":11,"status":200,"url":"/devices/ea92b8e6-6f6d-493b-a7a9-acd48fae105b/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5NH0.4HTbv_DI4pHnZTdMtyZL-ecxm3ROauPpWFDzwapENs4","level":"info","message":"auth send jwt","requestID":"5864cfb90e9d3ac6e72635bc4004227d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ffe222a0-442a-11ef-8685-a1e9f27e6f28"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"5864cfb90e9d3ac6e72635bc4004227d","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5864cfb90e9d3ac6e72635bc4004227d"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":368,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:54Z"} authorization-1 | {"client_addr":"127.0.0.1:36682","level":"info","msg":"Received request.","req_id":369,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:54Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9f4705f-b756-4923-bb26-1d61b923b99e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f487c24f-5ed1-4d6c-b710-94d1953c35e3","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213694.4145172} authorization-1 | {"client_addr":"127.0.0.1:36682","level":"info","msg":"Sent response.","req_id":369,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.859177,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ea92b8e6-6f6d-493b-a7a9-acd48fae105b","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"5864cfb90e9d3ac6e72635bc4004227d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/ea92b8e6-6f6d-493b-a7a9-acd48fae105b","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213694,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5NH0.4HTbv_DI4pHnZTdMtyZL-ecxm3ROauPpWFDzwapENs4"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"5864cfb90e9d3ac6e72635bc4004227d","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":368,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.240364,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b9f4705f-b756-4923-bb26-1d61b923b99e","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"ffe222a0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b9f4705f-b756-4923-bb26-1d61b923b99e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ffe222a0-442a-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fea92b8e6-6f6d-493b-a7a9-acd48fae105b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fea92b8e6-6f6d-493b-a7a9-acd48fae105b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:52.147587149Z"}]},"request_id":"2e3893a2-07b1-48cc-9128-67412c993502","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213694.4184766} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"5864cfb90e9d3ac6e72635bc4004227d","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ffe222a0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/b9f4705f-b756-4923-bb26-1d61b923b99e/signaling 200 10ms","method":"POST","requestID":"ffe222a0-442a-11ef-8685-a1e9f27e6f28","responseTime":10,"status":200,"url":"/devices/b9f4705f-b756-4923-bb26-1d61b923b99e/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cd2541d8-e589-413e-baba-66070bc5f29c"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"241c0b7280938c8bcbdf9b709988e8ad"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cd2541d8-e589-413e-baba-66070bc5f29c"},"level":"info","message":"Building connection plan","requestID":"241c0b7280938c8bcbdf9b709988e8ad"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"5f11b222-947d-47a6-b156-8d476f8a2b79"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"1e7e4966-1162-410e-a230-1f8f62455871"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"6d3c2d49-0848-4f7a-86c9-a23d08023268"}]},"level":"info","message":"Built pairwise service configurations","requestID":"241c0b7280938c8bcbdf9b709988e8ad"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/ea92b8e6-6f6d-493b-a7a9-acd48fae105b"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/b9f4705f-b756-4923-bb26-1d61b923b99e"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"241c0b7280938c8bcbdf9b709988e8ad"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5864cfb90e9d3ac6e72635bc4004227d"} gateway-1 | {"time_local":"17/Jul/2024:10:54:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ea92b8e6-6f6d-493b-a7a9-acd48fae105b? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5864cfb90e9d3ac6e72635bc4004227d"} device-1 | {"level":"info","message":"GET /devices/ea92b8e6-6f6d-493b-a7a9-acd48fae105b? 200 11ms","method":"GET","requestID":"5864cfb90e9d3ac6e72635bc4004227d","responseTime":11,"status":200,"url":"/devices/ea92b8e6-6f6d-493b-a7a9-acd48fae105b?"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"ffe41e70-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":370,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:54Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5NH0.4HTbv_DI4pHnZTdMtyZL-ecxm3ROauPpWFDzwapENs4","level":"info","message":"auth send jwt","requestID":"f6de4714787ac3e5ba4bbcf1fc707ce3"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":370,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.745399,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:54Z"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f6de4714787ac3e5ba4bbcf1fc707ce3","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"ffe41e70-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213694,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5NH0.4HTbv_DI4pHnZTdMtyZL-ecxm3ROauPpWFDzwapENs4"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f6de4714787ac3e5ba4bbcf1fc707ce3"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ffe41e70-442a-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":371,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:54Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":371,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.755375,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b9f4705f-b756-4923-bb26-1d61b923b99e","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f6de4714787ac3e5ba4bbcf1fc707ce3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/b9f4705f-b756-4923-bb26-1d61b923b99e","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213694,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5NH0.4HTbv_DI4pHnZTdMtyZL-ecxm3ROauPpWFDzwapENs4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f6de4714787ac3e5ba4bbcf1fc707ce3","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9f4705f-b756-4923-bb26-1d61b923b99e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9f4705f-b756-4923-bb26-1d61b923b99e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:52.191473062Z"}]},"request_id":"d6f5d287-9ffe-4f0c-bd50-ca3e639742e8","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213694.4338086} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f6de4714787ac3e5ba4bbcf1fc707ce3","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"c4de64df-dff8-4bcf-bb84-20aa85f52a06","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213694.436975} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f6de4714787ac3e5ba4bbcf1fc707ce3"} gateway-1 | {"time_local":"17/Jul/2024:10:54:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b9f4705f-b756-4923-bb26-1d61b923b99e? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f6de4714787ac3e5ba4bbcf1fc707ce3"} device-1 | {"level":"info","message":"GET /devices/b9f4705f-b756-4923-bb26-1d61b923b99e? 200 11ms","method":"GET","requestID":"f6de4714787ac3e5ba4bbcf1fc707ce3","responseTime":11,"status":200,"url":"/devices/b9f4705f-b756-4923-bb26-1d61b923b99e?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"52a8bb0d-bdf6-44d3-a221-1bc32f2cd6f0","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213694.4373589} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"ffe41e70-442a-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"ffe41e70-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"ffe41e70-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/735dc5d0-429a-4dad-a503-8a321e60dca8'","requestID":"ffe41e70-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/735dc5d0-429a-4dad-a503-8a321e60dca8'","requestID":"ffe41e70-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"ffe41e70-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 31ms","method":"POST","requestID":"ffe41e70-442a-11ef-8685-a1e9f27e6f28","responseTime":31,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"ffe41e70-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/735dc5d0-429a-4dad-a503-8a321e60dca8","device":"ea92b8e6-6f6d-493b-a7a9-acd48fae105b","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":false} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/735dc5d0-429a-4dad-a503-8a321e60dca8","device":"b9f4705f-b756-4923-bb26-1d61b923b99e","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":true} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cd2541d8-e589-413e-baba-66070bc5f29c"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"241c0b7280938c8bcbdf9b709988e8ad"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ffed1f20-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":372,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:54Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fea92b8e6-6f6d-493b-a7a9-acd48fae105b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"022fa14b-1fdd-48ab-b8ca-0584ac283299","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213694.486881} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":372,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.676129,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ea92b8e6-6f6d-493b-a7a9-acd48fae105b","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"ffed1f20-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ea92b8e6-6f6d-493b-a7a9-acd48fae105b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ffed1f20-442a-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ffed1f20-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/ea92b8e6-6f6d-493b-a7a9-acd48fae105b/signaling 200 8ms","method":"POST","requestID":"ffed1f20-442a-11ef-8685-a1e9f27e6f28","responseTime":9,"status":200,"url":"/devices/ea92b8e6-6f6d-493b-a7a9-acd48fae105b/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ffeeccd0-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":373,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:54Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9f4705f-b756-4923-bb26-1d61b923b99e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f5a8d326-d4ca-46b5-b0d0-9212c3f4a7b8","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213694.4972532} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":373,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.281756,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b9f4705f-b756-4923-bb26-1d61b923b99e","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"ffeeccd0-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b9f4705f-b756-4923-bb26-1d61b923b99e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ffeeccd0-442a-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ffeeccd0-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/b9f4705f-b756-4923-bb26-1d61b923b99e/signaling 200 8ms","method":"POST","requestID":"ffeeccd0-442a-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/devices/b9f4705f-b756-4923-bb26-1d61b923b99e/signaling"} device-1 | {"device":"b9f4705f-b756-4923-bb26-1d61b923b99e","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"b9f4705f-b756-4923-bb26-1d61b923b99e","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"ea92b8e6-6f6d-493b-a7a9-acd48fae105b","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"ea92b8e6-6f6d-493b-a7a9-acd48fae105b","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 8971796908605046265 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:/Uxh\r\na=ice-pwd:yavHiMoC0yMUyshtEt5xf3il\r\na=ice-options:trickle\r\na=fingerprint:sha-256 F4:51:41:E2:C3:48:E9:5E:6F:CD:D4:29:F8:4B:70:2F:9A:4D:9D:FF:9A:FE:83:76:F1:DB:C7:3C:DE:08:63:7E\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"b9f4705f-b756-4923-bb26-1d61b923b99e","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 7909009788058041938 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:wdmn\r\na=ice-pwd:ZV3bv4NO03ebytrhcJFAgZLH\r\na=ice-options:trickle\r\na=fingerprint:sha-256 A1:84:0D:37:E9:61:A7:FA:53:19:C7:0D:16:33:D0:4F:13:82:FD:18:C2:5D:95:E5:1C:DE:9E:2C:65:5A:28:CD\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"ea92b8e6-6f6d-493b-a7a9-acd48fae105b","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:1265436421 1 udp 2113937151 0cd33228-0d68-4b34-bad1-600d1c64b374.local 53413 typ host generation 0 ufrag wdmn network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"ea92b8e6-6f6d-493b-a7a9-acd48fae105b","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3628508694 1 udp 1677729535 141.24.211.56 53413 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag wdmn network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"ea92b8e6-6f6d-493b-a7a9-acd48fae105b","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/ea92b8e6-6f6d-493b-a7a9-acd48fae105b'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/ea92b8e6-6f6d-493b-a7a9-acd48fae105b'"} device-1 | {"content":{"candidate":"candidate:1147640957 1 udp 2113937151 ccdcb8ec-ad4c-472a-ae79-c26fc38bf648.local 46440 typ host generation 0 ufrag /Uxh network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"b9f4705f-b756-4923-bb26-1d61b923b99e","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3226138114 1 udp 1677729535 141.24.211.56 46440 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag /Uxh network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"b9f4705f-b756-4923-bb26-1d61b923b99e","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/b9f4705f-b756-4923-bb26-1d61b923b99e'"} device-1 | {"device":"b9f4705f-b756-4923-bb26-1d61b923b99e","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/735dc5d0-429a-4dad-a503-8a321e60dca8' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"735dc5d0-429a-4dad-a503-8a321e60dca8","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"ea92b8e6-6f6d-493b-a7a9-acd48fae105b","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"ea92b8e6-6f6d-493b-a7a9-acd48fae105b","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9c3c8018e8c82299fd5996a67b3bba23","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"9c3c8018e8c82299fd5996a67b3bba23","responseTime":1,"status":200,"url":"/auth"} device-1 | {"device":"b9f4705f-b756-4923-bb26-1d61b923b99e","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"b9f4705f-b756-4923-bb26-1d61b923b99e","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/ea92b8e6-6f6d-493b-a7a9-acd48fae105b"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/b9f4705f-b756-4923-bb26-1d61b923b99e"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/735dc5d0-429a-4dad-a503-8a321e60dca8"}}},"level":"info","message":"received a callback","requestID":"9c3c8018e8c82299fd5996a67b3bba23"} device-1 | {"device":"ea92b8e6-6f6d-493b-a7a9-acd48fae105b","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} gateway-1 | {"time_local":"17/Jul/2024:10:54:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.009","http_referrer":"","http_user_agent":"node-fetch","requestID":"9c3c8018e8c82299fd5996a67b3bba23"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 6ms","method":"POST","requestID":"9c3c8018e8c82299fd5996a67b3bba23","responseTime":6,"status":200,"url":"/callbacks/experiment"} device-1 | {"device":"ea92b8e6-6f6d-493b-a7a9-acd48fae105b","deviceName":"JS Device 1","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"735dc5d0-429a-4dad-a503-8a321e60dca8","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"735dc5d0-429a-4dad-a503-8a321e60dca8","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/735dc5d0-429a-4dad-a503-8a321e60dca8' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"735dc5d0-429a-4dad-a503-8a321e60dca8","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"fddbdc312337ac6bf8cbb1dfbfe90d90","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"fddbdc312337ac6bf8cbb1dfbfe90d90","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/ea92b8e6-6f6d-493b-a7a9-acd48fae105b"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/b9f4705f-b756-4923-bb26-1d61b923b99e"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/735dc5d0-429a-4dad-a503-8a321e60dca8"}}},"level":"info","message":"received a callback","requestID":"fddbdc312337ac6bf8cbb1dfbfe90d90"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"fffc3a50-442a-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":374,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:54Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F735dc5d0-429a-4dad-a503-8a321e60dca8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5baed8ad-4887-4d9b-8aa7-dad8cb5be9a6","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213694.5856829} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":374,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.016731,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/735dc5d0-429a-4dad-a503-8a321e60dca8","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"fffc3a50-442a-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/735dc5d0-429a-4dad-a503-8a321e60dca8","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"fffc3a50-442a-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"fffc3a50-442a-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /peerconnections/735dc5d0-429a-4dad-a503-8a321e60dca8 200 8ms","method":"GET","requestID":"fffc3a50-442a-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/peerconnections/735dc5d0-429a-4dad-a503-8a321e60dca8"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 32ms","method":"POST","requestID":"fddbdc312337ac6bf8cbb1dfbfe90d90","responseTime":32,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:54:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.034","http_referrer":"","http_user_agent":"node-fetch","requestID":"fddbdc312337ac6bf8cbb1dfbfe90d90"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0000a720-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":375,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:54Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fea92b8e6-6f6d-493b-a7a9-acd48fae105b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3c6a04aa-3111-4d1b-859c-ebda4be3b90c","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213694.614485} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":375,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.044613,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ea92b8e6-6f6d-493b-a7a9-acd48fae105b","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0000a720-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ea92b8e6-6f6d-493b-a7a9-acd48fae105b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0000a720-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0000a720-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/ea92b8e6-6f6d-493b-a7a9-acd48fae105b/signaling 200 8ms","method":"POST","requestID":"0000a720-442b-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/devices/ea92b8e6-6f6d-493b-a7a9-acd48fae105b/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"00022dc0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":376,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:54Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9f4705f-b756-4923-bb26-1d61b923b99e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1cdee26f-d9e9-45b8-99b5-2ec96818d0e3","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213694.6239479} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":376,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.181264,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b9f4705f-b756-4923-bb26-1d61b923b99e","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"00022dc0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b9f4705f-b756-4923-bb26-1d61b923b99e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"00022dc0-442b-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"00022dc0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/b9f4705f-b756-4923-bb26-1d61b923b99e/signaling 200 8ms","method":"POST","requestID":"00022dc0-442b-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/devices/b9f4705f-b756-4923-bb26-1d61b923b99e/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5NH0.4HTbv_DI4pHnZTdMtyZL-ecxm3ROauPpWFDzwapENs4","level":"info","message":"auth send jwt","requestID":"d0b10f82ecc83a48327e2db44051a6ad"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"d0b10f82ecc83a48327e2db44051a6ad","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/cd2541d8-e589-413e-baba-66070bc5f29c","requestID":"d0b10f82ecc83a48327e2db44051a6ad"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":377,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:54Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":377,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.858209,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/cd2541d8-e589-413e-baba-66070bc5f29c","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"d0b10f82ecc83a48327e2db44051a6ad","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:http://localhost/experiments/cd2541d8-e589-413e-baba-66070bc5f29c","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213694,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5NH0.4HTbv_DI4pHnZTdMtyZL-ecxm3ROauPpWFDzwapENs4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d0b10f82ecc83a48327e2db44051a6ad","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/cd2541d8-e589-413e-baba-66070bc5f29c","requestID":"d0b10f82ecc83a48327e2db44051a6ad"} gateway-1 | {"time_local":"17/Jul/2024:10:54:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/cd2541d8-e589-413e-baba-66070bc5f29c HTTP/1.1","status": "200","body_bytes_sent":"1360","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d0b10f82ecc83a48327e2db44051a6ad"} experiment-1 | {"level":"info","message":"GET /experiments/cd2541d8-e589-413e-baba-66070bc5f29c 200 10ms","method":"GET","requestID":"d0b10f82ecc83a48327e2db44051a6ad","responseTime":10,"status":200,"url":"/experiments/cd2541d8-e589-413e-baba-66070bc5f29c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5NH0.4HTbv_DI4pHnZTdMtyZL-ecxm3ROauPpWFDzwapENs4","level":"info","message":"auth send jwt","requestID":"71b53a399749d6577ba1e60a9f907580"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"71b53a399749d6577ba1e60a9f907580","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/cd2541d8-e589-413e-baba-66070bc5f29c","requestID":"71b53a399749d6577ba1e60a9f907580"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":378,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:54Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":378,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.718416,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:54Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/cd2541d8-e589-413e-baba-66070bc5f29c","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"71b53a399749d6577ba1e60a9f907580","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:http://localhost/experiments/cd2541d8-e589-413e-baba-66070bc5f29c","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213694,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5NH0.4HTbv_DI4pHnZTdMtyZL-ecxm3ROauPpWFDzwapENs4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"71b53a399749d6577ba1e60a9f907580","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cd2541d8-e589-413e-baba-66070bc5f29c"},"level":"info","message":"Attempting to finish experiment","requestID":"71b53a399749d6577ba1e60a9f907580"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"000c3fe0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":379,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:54Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":379,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.00972,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:54Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/735dc5d0-429a-4dad-a503-8a321e60dca8","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"000c3fe0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"peerconnection:http://localhost/peerconnections/735dc5d0-429a-4dad-a503-8a321e60dca8","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213694,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5NH0.4HTbv_DI4pHnZTdMtyZL-ecxm3ROauPpWFDzwapENs4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"000c3fe0-442b-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/735dc5d0-429a-4dad-a503-8a321e60dca8","device":"ea92b8e6-6f6d-493b-a7a9-acd48fae105b","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/735dc5d0-429a-4dad-a503-8a321e60dca8","device":"b9f4705f-b756-4923-bb26-1d61b923b99e","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/735dc5d0-429a-4dad-a503-8a321e60dca8' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/735dc5d0-429a-4dad-a503-8a321e60dca8' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"735dc5d0-429a-4dad-a503-8a321e60dca8","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5004431340dbecb1ac5af47713e125f2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F735dc5d0-429a-4dad-a503-8a321e60dca8': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F735dc5d0-429a-4dad-a503-8a321e60dca8","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]},"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":null},"raw_response":{},"request_id":"7ece6630-b127-435e-bba7-c3fab8cf2637","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213694.7037783} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e56d5035-937f-4c12-934f-57f63856f0c8","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213694.70397} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"5004431340dbecb1ac5af47713e125f2","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8de413bf167d1391f1ff1d0c90cfbee9","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/ea92b8e6-6f6d-493b-a7a9-acd48fae105b"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/b9f4705f-b756-4923-bb26-1d61b923b99e"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/735dc5d0-429a-4dad-a503-8a321e60dca8"}}},"level":"info","message":"received a callback","requestID":"5004431340dbecb1ac5af47713e125f2"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"8de413bf167d1391f1ff1d0c90cfbee9","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"000c3fe0-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/ea92b8e6-6f6d-493b-a7a9-acd48fae105b"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/b9f4705f-b756-4923-bb26-1d61b923b99e"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/735dc5d0-429a-4dad-a503-8a321e60dca8"}}},"level":"info","message":"received a callback","requestID":"8de413bf167d1391f1ff1d0c90cfbee9"} device-1 | {"data":{"peerconnection":"735dc5d0-429a-4dad-a503-8a321e60dca8","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"000c3fe0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"DELETE /peerconnections/735dc5d0-429a-4dad-a503-8a321e60dca8 204 38ms","method":"DELETE","requestID":"000c3fe0-442b-11ef-8685-a1e9f27e6f28","responseTime":38,"status":204,"url":"/peerconnections/735dc5d0-429a-4dad-a503-8a321e60dca8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cd2541d8-e589-413e-baba-66070bc5f29c"},"level":"info","message":"Successfully finished experiment","requestID":"71b53a399749d6577ba1e60a9f907580"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"00147d40-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":380,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:54Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fea92b8e6-6f6d-493b-a7a9-acd48fae105b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"be05f7c1-e652-4ac3-b834-1af5741a3707","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213694.7461107} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":380,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.553102,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ea92b8e6-6f6d-493b-a7a9-acd48fae105b","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"00147d40-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ea92b8e6-6f6d-493b-a7a9-acd48fae105b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"00147d40-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"00147d40-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/ea92b8e6-6f6d-493b-a7a9-acd48fae105b/signaling 200 11ms","method":"POST","requestID":"00147d40-442b-11ef-8685-a1e9f27e6f28","responseTime":11,"status":200,"url":"/devices/ea92b8e6-6f6d-493b-a7a9-acd48fae105b/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"00167910-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fcd2541d8-e589-413e-baba-66070bc5f29c': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fcd2541d8-e589-413e-baba-66070bc5f29c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]},"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":null},"raw_response":{},"request_id":"50ebc4e5-b02e-413b-b1f5-d51db9537f7d","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213694.754396} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5755ef4d-07c6-4c67-bd96-008141fcc2a2","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213694.7546682} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"71b53a399749d6577ba1e60a9f907580","responseTime":20,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":381,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:54Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9f4705f-b756-4923-bb26-1d61b923b99e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"12ab2d32-94d9-4778-a30f-1c345358361a","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213694.7610412} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":381,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.875111,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b9f4705f-b756-4923-bb26-1d61b923b99e","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"00167910-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b9f4705f-b756-4923-bb26-1d61b923b99e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"00167910-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"00167910-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/b9f4705f-b756-4923-bb26-1d61b923b99e/signaling 200 12ms","method":"POST","requestID":"00167910-442b-11ef-8685-a1e9f27e6f28","responseTime":12,"status":200,"url":"/devices/b9f4705f-b756-4923-bb26-1d61b923b99e/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/cd2541d8-e589-413e-baba-66070bc5f29c","requestID":"71b53a399749d6577ba1e60a9f907580"} gateway-1 | {"time_local":"17/Jul/2024:10:54:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/cd2541d8-e589-413e-baba-66070bc5f29c HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.147","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"71b53a399749d6577ba1e60a9f907580"} experiment-1 | {"level":"info","message":"DELETE /experiments/cd2541d8-e589-413e-baba-66070bc5f29c 204 145ms","method":"DELETE","requestID":"71b53a399749d6577ba1e60a9f907580","responseTime":145,"status":204,"url":"/experiments/cd2541d8-e589-413e-baba-66070bc5f29c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 120ms","method":"POST","requestID":"5004431340dbecb1ac5af47713e125f2","responseTime":120,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:54:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.123","http_referrer":"","http_user_agent":"node-fetch","requestID":"5004431340dbecb1ac5af47713e125f2"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 120ms","method":"POST","requestID":"8de413bf167d1391f1ff1d0c90cfbee9","responseTime":120,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:54:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.124","http_referrer":"","http_user_agent":"node-fetch","requestID":"8de413bf167d1391f1ff1d0c90cfbee9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5NH0.4HTbv_DI4pHnZTdMtyZL-ecxm3ROauPpWFDzwapENs4","level":"info","message":"auth send jwt","requestID":"b6abd08baf3da1cdb2104af150918714"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b6abd08baf3da1cdb2104af150918714","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"b6abd08baf3da1cdb2104af150918714"} gateway-1 | {"time_local":"17/Jul/2024:10:54:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2886","request_time":"0.646","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"040b3e9faae6279b887ebceff46b3b4a"} gateway-1 | {"time_local":"17/Jul/2024:10:54:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2888","request_time":"0.615","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"922297b5ca9a21b35303891cca7403b2"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":382,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:54Z"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/ea92b8e6-6f6d-493b-a7a9-acd48fae105b' closed"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":382,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.903488,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:54Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"b6abd08baf3da1cdb2104af150918714","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213694,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5NH0.4HTbv_DI4pHnZTdMtyZL-ecxm3ROauPpWFDzwapENs4"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"b6abd08baf3da1cdb2104af150918714","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/b9f4705f-b756-4923-bb26-1d61b923b99e' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F463f9f94-80a2-425f-acb8-b7d66e1ea0c2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"7a1cd002-c0be-4be7-bc7f-a591139139a2","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213694.8562899} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b6abd08baf3da1cdb2104af150918714","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2a2e4218-51b7-452b-a580-4c2c0a8e6a4a","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213694.8606045} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"b6abd08baf3da1cdb2104af150918714","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F463f9f94-80a2-425f-acb8-b7d66e1ea0c2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"e0d9bc9b-6f6a-42c3-8bdd-b114b303ce26","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213694.870125} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d15233fe-4544-4987-bf9c-5111332bb255","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213694.870341} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"b6abd08baf3da1cdb2104af150918714","responseTime":11,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F463f9f94-80a2-425f-acb8-b7d66e1ea0c2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F463f9f94-80a2-425f-acb8-b7d66e1ea0c2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:54.870100646Z"}]},"request_id":"6689b6a3-6212-4663-abd9-380c5fb770ea","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213694.8738747} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"b6abd08baf3da1cdb2104af150918714","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"b6abd08baf3da1cdb2104af150918714"} gateway-1 | {"time_local":"17/Jul/2024:10:54:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.052","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b6abd08baf3da1cdb2104af150918714"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"b6abd08baf3da1cdb2104af150918714","responseTime":46,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5NH0.4HTbv_DI4pHnZTdMtyZL-ecxm3ROauPpWFDzwapENs4","level":"info","message":"auth send jwt","requestID":"4c21120cd7a6ac16ba2acfa472cff12d"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"4c21120cd7a6ac16ba2acfa472cff12d","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"4c21120cd7a6ac16ba2acfa472cff12d"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":383,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:54Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":383,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.662475,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:54Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"4c21120cd7a6ac16ba2acfa472cff12d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213694,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5NH0.4HTbv_DI4pHnZTdMtyZL-ecxm3ROauPpWFDzwapENs4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4c21120cd7a6ac16ba2acfa472cff12d","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55482535-959c-40a8-9da8-e50b04a4b7c4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"6adb110b-cf3e-4550-86d1-94b3bfbae59c","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213694.9009914} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4c21120cd7a6ac16ba2acfa472cff12d","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6da96537-03c3-49cd-b141-fac0d4252ba0","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213694.906402} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"4c21120cd7a6ac16ba2acfa472cff12d","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55482535-959c-40a8-9da8-e50b04a4b7c4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"cab6bccf-9428-4cca-ac82-001043828728","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213694.9154334} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2f6e5ecc-38b7-49bc-a3b0-6d8fe4299b12","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213694.915613} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"4c21120cd7a6ac16ba2acfa472cff12d","responseTime":12,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55482535-959c-40a8-9da8-e50b04a4b7c4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55482535-959c-40a8-9da8-e50b04a4b7c4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:54.915415312Z"}]},"request_id":"09ae908b-b979-47ce-bd50-be159970f816","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213694.919484} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4c21120cd7a6ac16ba2acfa472cff12d","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"4c21120cd7a6ac16ba2acfa472cff12d"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"4c21120cd7a6ac16ba2acfa472cff12d","responseTime":41,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"17/Jul/2024:10:54:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.045","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4c21120cd7a6ac16ba2acfa472cff12d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5NX0.jUjNCV8Jcj6ftMFGmV3MPemkmn6ZGCBy0m2uXUjhRZU","level":"info","message":"auth send jwt","requestID":"5177430e037917753c79fcb642b47194"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5177430e037917753c79fcb642b47194","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"5177430e037917753c79fcb642b47194"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":384,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:55Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":384,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.091231,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:55Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/55482535-959c-40a8-9da8-e50b04a4b7c4","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"5177430e037917753c79fcb642b47194","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/55482535-959c-40a8-9da8-e50b04a4b7c4","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213695,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5NX0.jUjNCV8Jcj6ftMFGmV3MPemkmn6ZGCBy0m2uXUjhRZU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5177430e037917753c79fcb642b47194","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55482535-959c-40a8-9da8-e50b04a4b7c4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55482535-959c-40a8-9da8-e50b04a4b7c4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:54.915415312Z"}]},"request_id":"b74d91bd-c544-4ea5-b5c3-a8bc6a8376a5","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213695.4145744} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5177430e037917753c79fcb642b47194","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"aaf4435f-4ece-4bbc-9c52-5689abd5a9b3","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213695.420981} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"5177430e037917753c79fcb642b47194","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55482535-959c-40a8-9da8-e50b04a4b7c4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55482535-959c-40a8-9da8-e50b04a4b7c4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:54.915415312Z"}]},"request_id":"3f2631e0-0787-42b3-a001-905b91d8edbb","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213695.4325004} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5177430e037917753c79fcb642b47194","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"5177430e037917753c79fcb642b47194"} device-1 | {"level":"info","message":"PATCH /devices/55482535-959c-40a8-9da8-e50b04a4b7c4 200 34ms","method":"PATCH","requestID":"5177430e037917753c79fcb642b47194","responseTime":34,"status":200,"url":"/devices/55482535-959c-40a8-9da8-e50b04a4b7c4"} gateway-1 | {"time_local":"17/Jul/2024:10:54:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/55482535-959c-40a8-9da8-e50b04a4b7c4 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.041","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"5177430e037917753c79fcb642b47194"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5NX0.jUjNCV8Jcj6ftMFGmV3MPemkmn6ZGCBy0m2uXUjhRZU","level":"info","message":"auth send jwt","requestID":"3dc2bee6985de5e40ae8c10f8727819c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3dc2bee6985de5e40ae8c10f8727819c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"3dc2bee6985de5e40ae8c10f8727819c"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":385,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:55Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":385,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.381246,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:55Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/55482535-959c-40a8-9da8-e50b04a4b7c4","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"3dc2bee6985de5e40ae8c10f8727819c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/55482535-959c-40a8-9da8-e50b04a4b7c4","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213695,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5NX0.jUjNCV8Jcj6ftMFGmV3MPemkmn6ZGCBy0m2uXUjhRZU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3dc2bee6985de5e40ae8c10f8727819c","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"3dc2bee6985de5e40ae8c10f8727819c"} gateway-1 | {"time_local":"17/Jul/2024:10:54:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/55482535-959c-40a8-9da8-e50b04a4b7c4/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.025","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"3dc2bee6985de5e40ae8c10f8727819c"} device-1 | {"level":"info","message":"POST /devices/55482535-959c-40a8-9da8-e50b04a4b7c4/websocket 200 19ms","method":"POST","requestID":"3dc2bee6985de5e40ae8c10f8727819c","responseTime":19,"status":200,"url":"/devices/55482535-959c-40a8-9da8-e50b04a4b7c4/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/55482535-959c-40a8-9da8-e50b04a4b7c4' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0115bb638035b2b8e2609c10fc754a60","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"0115bb638035b2b8e2609c10fc754a60","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"17/Jul/2024:10:54:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/463f9f94-80a2-425f-acb8-b7d66e1ea0c2/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"0115bb638035b2b8e2609c10fc754a60"} device-1 | {"level":"info","message":"OPTIONS /devices/463f9f94-80a2-425f-acb8-b7d66e1ea0c2/websocket 200 1ms","method":"OPTIONS","requestID":"0115bb638035b2b8e2609c10fc754a60","responseTime":1,"status":200,"url":"/devices/463f9f94-80a2-425f-acb8-b7d66e1ea0c2/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5Nn0.bQatw2nn4NwLIJTh9qh-Lpe0m_6IqCR6q4ze5Jq0aZE","level":"info","message":"auth send jwt","requestID":"b09a4cf1954de6aa4d8ba317ba91d378"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"b09a4cf1954de6aa4d8ba317ba91d378","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"b09a4cf1954de6aa4d8ba317ba91d378"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":386,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:56Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":386,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.152147,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:56Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/463f9f94-80a2-425f-acb8-b7d66e1ea0c2","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"b09a4cf1954de6aa4d8ba317ba91d378","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/463f9f94-80a2-425f-acb8-b7d66e1ea0c2","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213696,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5Nn0.bQatw2nn4NwLIJTh9qh-Lpe0m_6IqCR6q4ze5Jq0aZE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b09a4cf1954de6aa4d8ba317ba91d378","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"b09a4cf1954de6aa4d8ba317ba91d378"} gateway-1 | {"time_local":"17/Jul/2024:10:54:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/463f9f94-80a2-425f-acb8-b7d66e1ea0c2/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.030","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"b09a4cf1954de6aa4d8ba317ba91d378"} device-1 | {"level":"info","message":"POST /devices/463f9f94-80a2-425f-acb8-b7d66e1ea0c2/websocket 200 23ms","method":"POST","requestID":"b09a4cf1954de6aa4d8ba317ba91d378","responseTime":23,"status":200,"url":"/devices/463f9f94-80a2-425f-acb8-b7d66e1ea0c2/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/463f9f94-80a2-425f-acb8-b7d66e1ea0c2' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5Nn0.bQatw2nn4NwLIJTh9qh-Lpe0m_6IqCR6q4ze5Jq0aZE","level":"info","message":"auth send jwt","requestID":"4c81b4fd39c165e01893443a01ae49ef"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"4c81b4fd39c165e01893443a01ae49ef","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4c81b4fd39c165e01893443a01ae49ef"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":387,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:56Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":387,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.333317,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:56Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/463f9f94-80a2-425f-acb8-b7d66e1ea0c2","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"4c81b4fd39c165e01893443a01ae49ef","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/463f9f94-80a2-425f-acb8-b7d66e1ea0c2","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213696,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5Nn0.bQatw2nn4NwLIJTh9qh-Lpe0m_6IqCR6q4ze5Jq0aZE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4c81b4fd39c165e01893443a01ae49ef","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F463f9f94-80a2-425f-acb8-b7d66e1ea0c2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F463f9f94-80a2-425f-acb8-b7d66e1ea0c2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:54.870100646Z"}]},"request_id":"38596107-0f65-4b1b-849d-b853408dfc96","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213696.9924896} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"4c81b4fd39c165e01893443a01ae49ef","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4c81b4fd39c165e01893443a01ae49ef"} gateway-1 | {"time_local":"17/Jul/2024:10:54:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/463f9f94-80a2-425f-acb8-b7d66e1ea0c2? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4c81b4fd39c165e01893443a01ae49ef"} device-1 | {"level":"info","message":"GET /devices/463f9f94-80a2-425f-acb8-b7d66e1ea0c2? 200 19ms","method":"GET","requestID":"4c81b4fd39c165e01893443a01ae49ef","responseTime":19,"status":200,"url":"/devices/463f9f94-80a2-425f-acb8-b7d66e1ea0c2?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5N30.u-NGHu9T4xJDe0RBk8uuJeSvvd-Xh7JmUPN_acsauOg","level":"info","message":"auth send jwt","requestID":"4d906ce7c758726fd46d44762dfc6d0c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4d906ce7c758726fd46d44762dfc6d0c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4d906ce7c758726fd46d44762dfc6d0c"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":388,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:57Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":388,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.278316,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/55482535-959c-40a8-9da8-e50b04a4b7c4","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"4d906ce7c758726fd46d44762dfc6d0c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/55482535-959c-40a8-9da8-e50b04a4b7c4","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213697,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5N30.u-NGHu9T4xJDe0RBk8uuJeSvvd-Xh7JmUPN_acsauOg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4d906ce7c758726fd46d44762dfc6d0c","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55482535-959c-40a8-9da8-e50b04a4b7c4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55482535-959c-40a8-9da8-e50b04a4b7c4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:54.915415312Z"}]},"request_id":"f1f64d19-7b4b-4e4d-b512-f4737bb14590","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213697.0191195} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4d906ce7c758726fd46d44762dfc6d0c","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4d906ce7c758726fd46d44762dfc6d0c"} gateway-1 | {"time_local":"17/Jul/2024:10:54:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/55482535-959c-40a8-9da8-e50b04a4b7c4? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4d906ce7c758726fd46d44762dfc6d0c"} device-1 | {"level":"info","message":"GET /devices/55482535-959c-40a8-9da8-e50b04a4b7c4? 200 19ms","method":"GET","requestID":"4d906ce7c758726fd46d44762dfc6d0c","responseTime":19,"status":200,"url":"/devices/55482535-959c-40a8-9da8-e50b04a4b7c4?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5N30.u-NGHu9T4xJDe0RBk8uuJeSvvd-Xh7JmUPN_acsauOg","level":"info","message":"auth send jwt","requestID":"3dbf39e90ffefa63c7a12997c15b6554"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3dbf39e90ffefa63c7a12997c15b6554","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"3dbf39e90ffefa63c7a12997c15b6554"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":389,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:57Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":389,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.196937,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:57Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"3dbf39e90ffefa63c7a12997c15b6554","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213697,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5N30.u-NGHu9T4xJDe0RBk8uuJeSvvd-Xh7JmUPN_acsauOg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3dbf39e90ffefa63c7a12997c15b6554","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bbe06123-90bc-42b3-ad08-d9c7b2ab1257"},"level":"info","message":"Attempting to run experiment","requestID":"3dbf39e90ffefa63c7a12997c15b6554"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bbe06123-90bc-42b3-ad08-d9c7b2ab1257"},"level":"info","message":"Attempting to book experiment","requestID":"3dbf39e90ffefa63c7a12997c15b6554"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bbe06123-90bc-42b3-ad08-d9c7b2ab1257"},"level":"info","message":"Successfully booked experiment","requestID":"3dbf39e90ffefa63c7a12997c15b6554"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"01787a10-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0178c830-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":390,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:57Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":390,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.628483,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:57Z"} authorization-1 | {"client_addr":"127.0.0.1:36682","level":"info","msg":"Received request.","req_id":391,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/463f9f94-80a2-425f-acb8-b7d66e1ea0c2","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"01787a10-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/463f9f94-80a2-425f-acb8-b7d66e1ea0c2","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213697,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5N30.u-NGHu9T4xJDe0RBk8uuJeSvvd-Xh7JmUPN_acsauOg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"01787a10-442b-11ef-8685-a1e9f27e6f28","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:36682","level":"info","msg":"Sent response.","req_id":391,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.655368,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/55482535-959c-40a8-9da8-e50b04a4b7c4","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0178c830-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/55482535-959c-40a8-9da8-e50b04a4b7c4","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213697,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5N30.u-NGHu9T4xJDe0RBk8uuJeSvvd-Xh7JmUPN_acsauOg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0178c830-442b-11ef-8685-a1e9f27e6f28","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F463f9f94-80a2-425f-acb8-b7d66e1ea0c2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F463f9f94-80a2-425f-acb8-b7d66e1ea0c2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:54.870100646Z"}]},"request_id":"55c5ec5a-8c83-4a61-922b-7012399bcad5","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213697.0817783} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"01787a10-442b-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55482535-959c-40a8-9da8-e50b04a4b7c4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55482535-959c-40a8-9da8-e50b04a4b7c4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:54.915415312Z"}]},"request_id":"5a646c18-2026-4f3e-a4ed-fc64a2db0652","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213697.0829701} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0178c830-442b-11ef-8685-a1e9f27e6f28","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"01787a10-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/463f9f94-80a2-425f-acb8-b7d66e1ea0c2? 200 14ms","method":"GET","requestID":"01787a10-442b-11ef-8685-a1e9f27e6f28","responseTime":14,"status":200,"url":"/devices/463f9f94-80a2-425f-acb8-b7d66e1ea0c2?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0178c830-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/55482535-959c-40a8-9da8-e50b04a4b7c4? 200 13ms","method":"GET","requestID":"0178c830-442b-11ef-8685-a1e9f27e6f28","responseTime":13,"status":200,"url":"/devices/55482535-959c-40a8-9da8-e50b04a4b7c4?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bbe06123-90bc-42b3-ad08-d9c7b2ab1257"},"level":"info","message":"Setting up experiment","requestID":"3dbf39e90ffefa63c7a12997c15b6554"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bbe06123-90bc-42b3-ad08-d9c7b2ab1257"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"3dbf39e90ffefa63c7a12997c15b6554"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bbe06123-90bc-42b3-ad08-d9c7b2ab1257"},"level":"info","message":"Successfully locked booking for experiment","requestID":"3dbf39e90ffefa63c7a12997c15b6554"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bbe06123-90bc-42b3-ad08-d9c7b2ab1257"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"3dbf39e90ffefa63c7a12997c15b6554"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bbe06123-90bc-42b3-ad08-d9c7b2ab1257"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"3dbf39e90ffefa63c7a12997c15b6554"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bbe06123-90bc-42b3-ad08-d9c7b2ab1257"},"level":"info","message":"Attempting to update booking for experiment","requestID":"3dbf39e90ffefa63c7a12997c15b6554"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bbe06123-90bc-42b3-ad08-d9c7b2ab1257"},"level":"info","message":"Successfully updated booking for experiment","requestID":"3dbf39e90ffefa63c7a12997c15b6554"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bbe06123-90bc-42b3-ad08-d9c7b2ab1257"},"level":"info","message":"Successfully set up experiment","requestID":"3dbf39e90ffefa63c7a12997c15b6554"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"01809060-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0180b770-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"01810590-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":392,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:57Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":392,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.9197,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:57Z"} authorization-1 | {"client_addr":"127.0.0.1:36682","level":"info","msg":"Received request.","req_id":393,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:57Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bbe06123-90bc-42b3-ad08-d9c7b2ab1257"},"level":"info","message":"Successfully running experiment","requestID":"3dbf39e90ffefa63c7a12997c15b6554"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/463f9f94-80a2-425f-acb8-b7d66e1ea0c2","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"01809060-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/463f9f94-80a2-425f-acb8-b7d66e1ea0c2","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213697,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5N30.u-NGHu9T4xJDe0RBk8uuJeSvvd-Xh7JmUPN_acsauOg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"01809060-442b-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:36682","level":"info","msg":"Sent response.","req_id":393,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.806681,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:57Z"} authorization-1 | {"client_addr":"127.0.0.1:36688","level":"info","msg":"Received request.","req_id":394,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/55482535-959c-40a8-9da8-e50b04a4b7c4","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0180b770-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/55482535-959c-40a8-9da8-e50b04a4b7c4","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213697,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5N30.u-NGHu9T4xJDe0RBk8uuJeSvvd-Xh7JmUPN_acsauOg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0180b770-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:36688","level":"info","msg":"Sent response.","req_id":394,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.610899,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:57Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F463f9f94-80a2-425f-acb8-b7d66e1ea0c2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5b627ffe-1690-4797-9212-a0f18b49b8eb","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213697.133665} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/463f9f94-80a2-425f-acb8-b7d66e1ea0c2","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"01810590-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/463f9f94-80a2-425f-acb8-b7d66e1ea0c2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"01810590-442b-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F463f9f94-80a2-425f-acb8-b7d66e1ea0c2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F463f9f94-80a2-425f-acb8-b7d66e1ea0c2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:54.870100646Z"}]},"request_id":"8fa62268-f25d-497f-acfa-044da7db44ac","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213697.1368725} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"01809060-442b-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55482535-959c-40a8-9da8-e50b04a4b7c4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55482535-959c-40a8-9da8-e50b04a4b7c4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:54.915415312Z"}]},"request_id":"5bea1237-c0da-4fec-b9c6-5dfaee238f48","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213697.139114} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0180b770-442b-11ef-8685-a1e9f27e6f28","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"01810590-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/463f9f94-80a2-425f-acb8-b7d66e1ea0c2/signaling 200 12ms","method":"POST","requestID":"01810590-442b-11ef-8685-a1e9f27e6f28","responseTime":12,"status":200,"url":"/devices/463f9f94-80a2-425f-acb8-b7d66e1ea0c2/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"01834f80-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"01809060-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/463f9f94-80a2-425f-acb8-b7d66e1ea0c2? 200 21ms","method":"GET","requestID":"01809060-442b-11ef-8685-a1e9f27e6f28","responseTime":21,"status":200,"url":"/devices/463f9f94-80a2-425f-acb8-b7d66e1ea0c2?"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":395,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:57Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0180b770-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/55482535-959c-40a8-9da8-e50b04a4b7c4? 200 21ms","method":"GET","requestID":"0180b770-442b-11ef-8685-a1e9f27e6f28","responseTime":21,"status":200,"url":"/devices/55482535-959c-40a8-9da8-e50b04a4b7c4?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"018439e0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55482535-959c-40a8-9da8-e50b04a4b7c4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ab67b474-ab73-44d0-9b37-63d9d1d53940","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213697.1499548} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":395,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.47903,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/55482535-959c-40a8-9da8-e50b04a4b7c4","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"01834f80-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/55482535-959c-40a8-9da8-e50b04a4b7c4","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"01834f80-442b-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fbbe06123-90bc-42b3-ad08-d9c7b2ab1257#owner@http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fbbe06123-90bc-42b3-ad08-d9c7b2ab1257","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"0ace2b3b-78cb-46de-8351-d6c08659159d","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213697.15217} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fa90b86b-a230-4877-afc4-82f55decff9c","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213697.1523683} authorization-1 | {"client_addr":"127.0.0.1:36682","level":"info","msg":"Received request.","req_id":396,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:57Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"01834f80-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/55482535-959c-40a8-9da8-e50b04a4b7c4/signaling 200 12ms","method":"POST","requestID":"01834f80-442b-11ef-8685-a1e9f27e6f28","responseTime":12,"status":200,"url":"/devices/55482535-959c-40a8-9da8-e50b04a4b7c4/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"3dbf39e90ffefa63c7a12997c15b6554","responseTime":22,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F463f9f94-80a2-425f-acb8-b7d66e1ea0c2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"14895ca8-ec37-4f9b-b85c-f8e9be3256a5","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213697.1567473} authorization-1 | {"client_addr":"127.0.0.1:36682","level":"info","msg":"Sent response.","req_id":396,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.82643,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/463f9f94-80a2-425f-acb8-b7d66e1ea0c2","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"018439e0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/463f9f94-80a2-425f-acb8-b7d66e1ea0c2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"018439e0-442b-11ef-8685-a1e9f27e6f28","responseTime":9,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/bbe06123-90bc-42b3-ad08-d9c7b2ab1257","user":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"3dbf39e90ffefa63c7a12997c15b6554"} experiment-1 | {"level":"info","message":"POST /experiments? 201 129ms","method":"POST","requestID":"3dbf39e90ffefa63c7a12997c15b6554","responseTime":129,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"17/Jul/2024:10:54:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1291","request_time":"0.136","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3dbf39e90ffefa63c7a12997c15b6554"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"018439e0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/463f9f94-80a2-425f-acb8-b7d66e1ea0c2/signaling 200 16ms","method":"POST","requestID":"018439e0-442b-11ef-8685-a1e9f27e6f28","responseTime":16,"status":200,"url":"/devices/463f9f94-80a2-425f-acb8-b7d66e1ea0c2/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5N30.u-NGHu9T4xJDe0RBk8uuJeSvvd-Xh7JmUPN_acsauOg","level":"info","message":"auth send jwt","requestID":"46ff31c621b8041563f5151988d63efb"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"46ff31c621b8041563f5151988d63efb","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"46ff31c621b8041563f5151988d63efb"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":397,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:57Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"01887fa0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":397,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.094445,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/463f9f94-80a2-425f-acb8-b7d66e1ea0c2","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"46ff31c621b8041563f5151988d63efb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/463f9f94-80a2-425f-acb8-b7d66e1ea0c2","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213697,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5N30.u-NGHu9T4xJDe0RBk8uuJeSvvd-Xh7JmUPN_acsauOg"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"46ff31c621b8041563f5151988d63efb","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":398,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:57Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":398,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.428845,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:57Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55482535-959c-40a8-9da8-e50b04a4b7c4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ee3a2195-5355-4d7a-981e-3463c551bc12","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213697.1856005} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F463f9f94-80a2-425f-acb8-b7d66e1ea0c2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F463f9f94-80a2-425f-acb8-b7d66e1ea0c2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:54.870100646Z"}]},"request_id":"559ea2ea-9f4e-4994-967d-2599e888873c","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213697.18655} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/55482535-959c-40a8-9da8-e50b04a4b7c4","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"01887fa0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/55482535-959c-40a8-9da8-e50b04a4b7c4","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"01887fa0-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"46ff31c621b8041563f5151988d63efb","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"01887fa0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/55482535-959c-40a8-9da8-e50b04a4b7c4/signaling 200 14ms","method":"POST","requestID":"01887fa0-442b-11ef-8685-a1e9f27e6f28","responseTime":14,"status":200,"url":"/devices/55482535-959c-40a8-9da8-e50b04a4b7c4/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"46ff31c621b8041563f5151988d63efb"} gateway-1 | {"time_local":"17/Jul/2024:10:54:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/463f9f94-80a2-425f-acb8-b7d66e1ea0c2? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"46ff31c621b8041563f5151988d63efb"} device-1 | {"level":"info","message":"GET /devices/463f9f94-80a2-425f-acb8-b7d66e1ea0c2? 200 21ms","method":"GET","requestID":"46ff31c621b8041563f5151988d63efb","responseTime":21,"status":200,"url":"/devices/463f9f94-80a2-425f-acb8-b7d66e1ea0c2?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bbe06123-90bc-42b3-ad08-d9c7b2ab1257"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"3dbf39e90ffefa63c7a12997c15b6554"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bbe06123-90bc-42b3-ad08-d9c7b2ab1257"},"level":"info","message":"Building connection plan","requestID":"3dbf39e90ffefa63c7a12997c15b6554"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"3ceda6b4-81f4-44c8-b0b6-5439b2665293"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"aee12d62-dddb-4c0a-9636-736fe3c12c30"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"4ada0699-7898-4cea-969c-7f4fc8bcf919"}]},"level":"info","message":"Built pairwise service configurations","requestID":"3dbf39e90ffefa63c7a12997c15b6554"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/55482535-959c-40a8-9da8-e50b04a4b7c4"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/463f9f94-80a2-425f-acb8-b7d66e1ea0c2"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"3dbf39e90ffefa63c7a12997c15b6554"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"018af0a0-442b-11ef-8685-a1e9f27e6f28"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5N30.u-NGHu9T4xJDe0RBk8uuJeSvvd-Xh7JmUPN_acsauOg","level":"info","message":"auth send jwt","requestID":"68b7de6f5dcf8a54cc1f072abf66f4d2"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"68b7de6f5dcf8a54cc1f072abf66f4d2","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":399,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:57Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":399,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.683953,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:57Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"68b7de6f5dcf8a54cc1f072abf66f4d2"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"018af0a0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213697,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5N30.u-NGHu9T4xJDe0RBk8uuJeSvvd-Xh7JmUPN_acsauOg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"018af0a0-442b-11ef-8685-a1e9f27e6f28","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":400,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:57Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":400,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.901016,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/55482535-959c-40a8-9da8-e50b04a4b7c4","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"68b7de6f5dcf8a54cc1f072abf66f4d2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/55482535-959c-40a8-9da8-e50b04a4b7c4","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213697,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5N30.u-NGHu9T4xJDe0RBk8uuJeSvvd-Xh7JmUPN_acsauOg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"68b7de6f5dcf8a54cc1f072abf66f4d2","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55482535-959c-40a8-9da8-e50b04a4b7c4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55482535-959c-40a8-9da8-e50b04a4b7c4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:54.915415312Z"}]},"request_id":"3a820b2f-c7b5-4b27-b2bb-beeb831b451f","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213697.2053492} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"68b7de6f5dcf8a54cc1f072abf66f4d2","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"68b7de6f5dcf8a54cc1f072abf66f4d2"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"f46de1c7-8368-43a6-ba39-bce940c7d38f","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213697.2095094} gateway-1 | {"time_local":"17/Jul/2024:10:54:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/55482535-959c-40a8-9da8-e50b04a4b7c4? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"68b7de6f5dcf8a54cc1f072abf66f4d2"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b1305b96-6d67-40f8-a4b8-93fe7d3854bb","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213697.2098012} device-1 | {"level":"info","message":"GET /devices/55482535-959c-40a8-9da8-e50b04a4b7c4? 200 12ms","method":"GET","requestID":"68b7de6f5dcf8a54cc1f072abf66f4d2","responseTime":12,"status":200,"url":"/devices/55482535-959c-40a8-9da8-e50b04a4b7c4?"} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"018af0a0-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"018af0a0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"018af0a0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/03c71145-6c80-4de8-aabc-0291dd5aa9fa'","requestID":"018af0a0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/03c71145-6c80-4de8-aabc-0291dd5aa9fa'","requestID":"018af0a0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"018af0a0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 27ms","method":"POST","requestID":"018af0a0-442b-11ef-8685-a1e9f27e6f28","responseTime":27,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"018af0a0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/03c71145-6c80-4de8-aabc-0291dd5aa9fa","device":"463f9f94-80a2-425f-acb8-b7d66e1ea0c2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":true} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bbe06123-90bc-42b3-ad08-d9c7b2ab1257"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"3dbf39e90ffefa63c7a12997c15b6554"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"01935510-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":401,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:57Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F463f9f94-80a2-425f-acb8-b7d66e1ea0c2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d9173099-42fa-4267-9205-82b8156b88a2","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213697.2535949} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":401,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.160338,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/463f9f94-80a2-425f-acb8-b7d66e1ea0c2","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"01935510-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/463f9f94-80a2-425f-acb8-b7d66e1ea0c2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"01935510-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"01935510-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/463f9f94-80a2-425f-acb8-b7d66e1ea0c2/signaling 200 9ms","method":"POST","requestID":"01935510-442b-11ef-8685-a1e9f27e6f28","responseTime":9,"status":200,"url":"/devices/463f9f94-80a2-425f-acb8-b7d66e1ea0c2/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"019502c0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"device":"463f9f94-80a2-425f-acb8-b7d66e1ea0c2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"463f9f94-80a2-425f-acb8-b7d66e1ea0c2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":402,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:57Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55482535-959c-40a8-9da8-e50b04a4b7c4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2657842b-6631-4dba-aa48-7e91e51e5cdd","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213697.2645729} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":402,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.524954,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/55482535-959c-40a8-9da8-e50b04a4b7c4","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"019502c0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/55482535-959c-40a8-9da8-e50b04a4b7c4","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"019502c0-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"content":{"sdp":"v=0\r\no=- 8021467668275408942 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:r7tE\r\na=ice-pwd:4TIMD2Bmb0IxVy5F1RTZVX4z\r\na=ice-options:trickle\r\na=fingerprint:sha-256 37:A0:1C:CE:68:09:46:A0:7E:C5:C3:BB:7D:D4:7C:BD:05:A6:98:16:07:D6:A8:6D:97:AC:5A:9B:CA:81:D5:47\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"463f9f94-80a2-425f-acb8-b7d66e1ea0c2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"019502c0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/55482535-959c-40a8-9da8-e50b04a4b7c4/signaling 200 11ms","method":"POST","requestID":"019502c0-442b-11ef-8685-a1e9f27e6f28","responseTime":11,"status":200,"url":"/devices/55482535-959c-40a8-9da8-e50b04a4b7c4/signaling"} device-1 | {"device":"463f9f94-80a2-425f-acb8-b7d66e1ea0c2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"55482535-959c-40a8-9da8-e50b04a4b7c4","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"03c71145-6c80-4de8-aabc-0291dd5aa9fa","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"55482535-959c-40a8-9da8-e50b04a4b7c4","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"55482535-959c-40a8-9da8-e50b04a4b7c4","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"55482535-959c-40a8-9da8-e50b04a4b7c4","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"55482535-959c-40a8-9da8-e50b04a4b7c4","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/03c71145-6c80-4de8-aabc-0291dd5aa9fa' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"03c71145-6c80-4de8-aabc-0291dd5aa9fa","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"18e11a65aedc70cb1ae82d83cc1d52e1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"18e11a65aedc70cb1ae82d83cc1d52e1","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/55482535-959c-40a8-9da8-e50b04a4b7c4"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/463f9f94-80a2-425f-acb8-b7d66e1ea0c2"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/03c71145-6c80-4de8-aabc-0291dd5aa9fa"}}},"level":"info","message":"received a callback","requestID":"18e11a65aedc70cb1ae82d83cc1d52e1"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 8ms","method":"POST","requestID":"18e11a65aedc70cb1ae82d83cc1d52e1","responseTime":8,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:54:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.011","http_referrer":"","http_user_agent":"node-fetch","requestID":"18e11a65aedc70cb1ae82d83cc1d52e1"} device-1 | {"content":{"candidate":"candidate:3667451690 1 udp 2113937151 261f7e94-b347-471b-819f-93816f762ac3.local 40975 typ host generation 0 ufrag r7tE network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"463f9f94-80a2-425f-acb8-b7d66e1ea0c2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1588966741 1 udp 1677729535 141.24.211.56 40975 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag r7tE network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"463f9f94-80a2-425f-acb8-b7d66e1ea0c2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:230165214 1 udp 33562623 141.24.210.113 58063 typ relay raddr 141.24.211.56 rport 40975 generation 0 ufrag r7tE network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"463f9f94-80a2-425f-acb8-b7d66e1ea0c2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/463f9f94-80a2-425f-acb8-b7d66e1ea0c2'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/463f9f94-80a2-425f-acb8-b7d66e1ea0c2'"} device-1 | {"device":"463f9f94-80a2-425f-acb8-b7d66e1ea0c2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"data":{"peerconnection":"03c71145-6c80-4de8-aabc-0291dd5aa9fa","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"55482535-959c-40a8-9da8-e50b04a4b7c4","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"463f9f94-80a2-425f-acb8-b7d66e1ea0c2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"55482535-959c-40a8-9da8-e50b04a4b7c4","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"03c71145-6c80-4de8-aabc-0291dd5aa9fa","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/03c71145-6c80-4de8-aabc-0291dd5aa9fa' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"03c71145-6c80-4de8-aabc-0291dd5aa9fa","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"12ef0dd61c741d3d1f598cfb473b21de","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"12ef0dd61c741d3d1f598cfb473b21de","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/55482535-959c-40a8-9da8-e50b04a4b7c4"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/463f9f94-80a2-425f-acb8-b7d66e1ea0c2"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/03c71145-6c80-4de8-aabc-0291dd5aa9fa"}}},"level":"info","message":"received a callback","requestID":"12ef0dd61c741d3d1f598cfb473b21de"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"02d8cd60-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":403,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:59Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F03c71145-6c80-4de8-aabc-0291dd5aa9fa","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b4cf83f3-995a-4d49-a6e7-b00a290566d6","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213699.3896296} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":403,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":4.662274,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/03c71145-6c80-4de8-aabc-0291dd5aa9fa","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"02d8cd60-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/03c71145-6c80-4de8-aabc-0291dd5aa9fa","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"02d8cd60-442b-11ef-8685-a1e9f27e6f28","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"02d8cd60-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /peerconnections/03c71145-6c80-4de8-aabc-0291dd5aa9fa 200 14ms","method":"GET","requestID":"02d8cd60-442b-11ef-8685-a1e9f27e6f28","responseTime":14,"status":200,"url":"/peerconnections/03c71145-6c80-4de8-aabc-0291dd5aa9fa"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 47ms","method":"POST","requestID":"12ef0dd61c741d3d1f598cfb473b21de","responseTime":47,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:54:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.052","http_referrer":"","http_user_agent":"node-fetch","requestID":"12ef0dd61c741d3d1f598cfb473b21de"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"02dec0d0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":404,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:59Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55482535-959c-40a8-9da8-e50b04a4b7c4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"69ee0234-a7d2-4455-9085-c134d1813e5d","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213699.4287674} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":404,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.647608,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:59Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/55482535-959c-40a8-9da8-e50b04a4b7c4","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"02dec0d0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/55482535-959c-40a8-9da8-e50b04a4b7c4","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"02dec0d0-442b-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"02dec0d0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/55482535-959c-40a8-9da8-e50b04a4b7c4/signaling 200 15ms","method":"POST","requestID":"02dec0d0-442b-11ef-8685-a1e9f27e6f28","responseTime":15,"status":200,"url":"/devices/55482535-959c-40a8-9da8-e50b04a4b7c4/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"02e17ff0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":405,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:59Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F463f9f94-80a2-425f-acb8-b7d66e1ea0c2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"334f6c5c-6858-4819-a191-130edc8e111b","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213699.446531} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":405,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.759544,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:59Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/463f9f94-80a2-425f-acb8-b7d66e1ea0c2","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"02e17ff0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/463f9f94-80a2-425f-acb8-b7d66e1ea0c2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"02e17ff0-442b-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"02e17ff0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/463f9f94-80a2-425f-acb8-b7d66e1ea0c2/signaling 200 16ms","method":"POST","requestID":"02e17ff0-442b-11ef-8685-a1e9f27e6f28","responseTime":16,"status":200,"url":"/devices/463f9f94-80a2-425f-acb8-b7d66e1ea0c2/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5OX0.DFNuMwPKqTBs-PbbpP-FHtTFU1_CXupzgx40dsLhBIA","level":"info","message":"auth send jwt","requestID":"4595a8dd7c01f947ef52f80975afd530"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4595a8dd7c01f947ef52f80975afd530","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/bbe06123-90bc-42b3-ad08-d9c7b2ab1257","requestID":"4595a8dd7c01f947ef52f80975afd530"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":406,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:59Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":406,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":2.477181,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/bbe06123-90bc-42b3-ad08-d9c7b2ab1257","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"4595a8dd7c01f947ef52f80975afd530","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:http://localhost/experiments/bbe06123-90bc-42b3-ad08-d9c7b2ab1257","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213699,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5OX0.DFNuMwPKqTBs-PbbpP-FHtTFU1_CXupzgx40dsLhBIA"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"4595a8dd7c01f947ef52f80975afd530","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/bbe06123-90bc-42b3-ad08-d9c7b2ab1257","requestID":"4595a8dd7c01f947ef52f80975afd530"} gateway-1 | {"time_local":"17/Jul/2024:10:54:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/bbe06123-90bc-42b3-ad08-d9c7b2ab1257 HTTP/1.1","status": "200","body_bytes_sent":"1364","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4595a8dd7c01f947ef52f80975afd530"} experiment-1 | {"level":"info","message":"GET /experiments/bbe06123-90bc-42b3-ad08-d9c7b2ab1257 200 17ms","method":"GET","requestID":"4595a8dd7c01f947ef52f80975afd530","responseTime":17,"status":200,"url":"/experiments/bbe06123-90bc-42b3-ad08-d9c7b2ab1257"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5OX0.DFNuMwPKqTBs-PbbpP-FHtTFU1_CXupzgx40dsLhBIA","level":"info","message":"auth send jwt","requestID":"637b430094fe6b4318d7b772c7e5400d"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"637b430094fe6b4318d7b772c7e5400d","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/bbe06123-90bc-42b3-ad08-d9c7b2ab1257","requestID":"637b430094fe6b4318d7b772c7e5400d"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":407,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:59Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":407,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.457627,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:59Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/bbe06123-90bc-42b3-ad08-d9c7b2ab1257","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"637b430094fe6b4318d7b772c7e5400d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:http://localhost/experiments/bbe06123-90bc-42b3-ad08-d9c7b2ab1257","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213699,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5OX0.DFNuMwPKqTBs-PbbpP-FHtTFU1_CXupzgx40dsLhBIA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"637b430094fe6b4318d7b772c7e5400d","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bbe06123-90bc-42b3-ad08-d9c7b2ab1257"},"level":"info","message":"Attempting to finish experiment","requestID":"637b430094fe6b4318d7b772c7e5400d"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"02ecca90-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":408,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:59Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":408,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.259572,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:59Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/03c71145-6c80-4de8-aabc-0291dd5aa9fa","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"02ecca90-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"peerconnection:http://localhost/peerconnections/03c71145-6c80-4de8-aabc-0291dd5aa9fa","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213699,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5OX0.DFNuMwPKqTBs-PbbpP-FHtTFU1_CXupzgx40dsLhBIA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"02ecca90-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/03c71145-6c80-4de8-aabc-0291dd5aa9fa","device":"463f9f94-80a2-425f-acb8-b7d66e1ea0c2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"55482535-959c-40a8-9da8-e50b04a4b7c4","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"55482535-959c-40a8-9da8-e50b04a4b7c4","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"55482535-959c-40a8-9da8-e50b04a4b7c4","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/03c71145-6c80-4de8-aabc-0291dd5aa9fa' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/03c71145-6c80-4de8-aabc-0291dd5aa9fa' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"03c71145-6c80-4de8-aabc-0291dd5aa9fa","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"488e3c3f062989606e0dab2db38169e4","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F03c71145-6c80-4de8-aabc-0291dd5aa9fa': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F03c71145-6c80-4de8-aabc-0291dd5aa9fa","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]},"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":null},"raw_response":{},"request_id":"b2b9de8c-9ac0-447b-a7da-6a2c4a93d7b9","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213699.5422099} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"488e3c3f062989606e0dab2db38169e4","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a372abe5-f2d8-459b-81c6-d939adff100a","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213699.54295} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/55482535-959c-40a8-9da8-e50b04a4b7c4"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/463f9f94-80a2-425f-acb8-b7d66e1ea0c2"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/03c71145-6c80-4de8-aabc-0291dd5aa9fa"}}},"level":"info","message":"received a callback","requestID":"488e3c3f062989606e0dab2db38169e4"} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"02ecca90-442b-11ef-8685-a1e9f27e6f28","responseTime":16,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a6c8d20a4cd797ec8657a4d9dbed0d3e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"a6c8d20a4cd797ec8657a4d9dbed0d3e","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/55482535-959c-40a8-9da8-e50b04a4b7c4"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/463f9f94-80a2-425f-acb8-b7d66e1ea0c2"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/03c71145-6c80-4de8-aabc-0291dd5aa9fa"}}},"level":"info","message":"received a callback","requestID":"a6c8d20a4cd797ec8657a4d9dbed0d3e"} device-1 | {"data":{"peerconnection":"03c71145-6c80-4de8-aabc-0291dd5aa9fa","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"02ecca90-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"DELETE /peerconnections/03c71145-6c80-4de8-aabc-0291dd5aa9fa 204 52ms","method":"DELETE","requestID":"02ecca90-442b-11ef-8685-a1e9f27e6f28","responseTime":52,"status":204,"url":"/peerconnections/03c71145-6c80-4de8-aabc-0291dd5aa9fa"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bbe06123-90bc-42b3-ad08-d9c7b2ab1257"},"level":"info","message":"Successfully finished experiment","requestID":"637b430094fe6b4318d7b772c7e5400d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"02f83c40-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":409,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:59Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F55482535-959c-40a8-9da8-e50b04a4b7c4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e550e666-0b7d-478e-8f1a-c8e30a4cc9a4","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213699.5964632} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":409,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.426162,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:59Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/55482535-959c-40a8-9da8-e50b04a4b7c4","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"02f83c40-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/55482535-959c-40a8-9da8-e50b04a4b7c4","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"02f83c40-442b-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"02f83c40-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/55482535-959c-40a8-9da8-e50b04a4b7c4/signaling 200 15ms","method":"POST","requestID":"02f83c40-442b-11ef-8685-a1e9f27e6f28","responseTime":15,"status":200,"url":"/devices/55482535-959c-40a8-9da8-e50b04a4b7c4/signaling"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fbbe06123-90bc-42b3-ad08-d9c7b2ab1257': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fbbe06123-90bc-42b3-ad08-d9c7b2ab1257","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]},"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":null},"raw_response":{},"request_id":"8ac11836-265e-4bec-a6e1-c0724a291d1b","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213699.60555} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"02fafb60-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4c73d223-22f0-4eef-a8d5-32078c78bdd1","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213699.6059322} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"637b430094fe6b4318d7b772c7e5400d","responseTime":21,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":410,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:59Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F463f9f94-80a2-425f-acb8-b7d66e1ea0c2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b15b5e37-7343-4c71-b795-a50f7a801d1f","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213699.6128986} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":410,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.888355,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:59Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/463f9f94-80a2-425f-acb8-b7d66e1ea0c2","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"02fafb60-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/463f9f94-80a2-425f-acb8-b7d66e1ea0c2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"02fafb60-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"02fafb60-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/463f9f94-80a2-425f-acb8-b7d66e1ea0c2/signaling 200 12ms","method":"POST","requestID":"02fafb60-442b-11ef-8685-a1e9f27e6f28","responseTime":12,"status":200,"url":"/devices/463f9f94-80a2-425f-acb8-b7d66e1ea0c2/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/bbe06123-90bc-42b3-ad08-d9c7b2ab1257","requestID":"637b430094fe6b4318d7b772c7e5400d"} gateway-1 | {"time_local":"17/Jul/2024:10:54:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/bbe06123-90bc-42b3-ad08-d9c7b2ab1257 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.181","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"637b430094fe6b4318d7b772c7e5400d"} gateway-1 | {"time_local":"17/Jul/2024:10:54:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3229","request_time":"4.209","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"ec3b807279ea3949573f700af4b658e2"} experiment-1 | {"level":"info","message":"DELETE /experiments/bbe06123-90bc-42b3-ad08-d9c7b2ab1257 204 176ms","method":"DELETE","requestID":"637b430094fe6b4318d7b772c7e5400d","responseTime":176,"status":204,"url":"/experiments/bbe06123-90bc-42b3-ad08-d9c7b2ab1257"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 132ms","method":"POST","requestID":"488e3c3f062989606e0dab2db38169e4","responseTime":132,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:54:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.138","http_referrer":"","http_user_agent":"node-fetch","requestID":"488e3c3f062989606e0dab2db38169e4"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5OX0.DFNuMwPKqTBs-PbbpP-FHtTFU1_CXupzgx40dsLhBIA","level":"info","message":"auth send jwt","requestID":"846003a8067358c1493d8df43eab6cc7"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"846003a8067358c1493d8df43eab6cc7","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"846003a8067358c1493d8df43eab6cc7"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 135ms","method":"POST","requestID":"a6c8d20a4cd797ec8657a4d9dbed0d3e","responseTime":135,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:54:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.144","http_referrer":"","http_user_agent":"node-fetch","requestID":"a6c8d20a4cd797ec8657a4d9dbed0d3e"} gateway-1 | {"time_local":"17/Jul/2024:10:54:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2742","request_time":"2.730","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"87bd67e512b0dec114f253f52dc7affb"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":411,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:59Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":411,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.990859,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:59Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"846003a8067358c1493d8df43eab6cc7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213699,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5OX0.DFNuMwPKqTBs-PbbpP-FHtTFU1_CXupzgx40dsLhBIA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"846003a8067358c1493d8df43eab6cc7","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/55482535-959c-40a8-9da8-e50b04a4b7c4' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8fc06bb7-1536-4ff0-8ef1-4e3494f421e0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"8628d5a2-383d-4198-8485-0c40f5172c46","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213699.71096} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"846003a8067358c1493d8df43eab6cc7","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/463f9f94-80a2-425f-acb8-b7d66e1ea0c2' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ccc87663-27ea-4dd4-9384-da365bec27da","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213699.7161806} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"846003a8067358c1493d8df43eab6cc7","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8fc06bb7-1536-4ff0-8ef1-4e3494f421e0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"33e8f2a0-3fd5-4ffd-9555-d5a26a631047","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213699.7272341} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"946eabae-d542-48a5-ba09-d48630e5a6eb","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213699.7273512} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"846003a8067358c1493d8df43eab6cc7","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8fc06bb7-1536-4ff0-8ef1-4e3494f421e0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8fc06bb7-1536-4ff0-8ef1-4e3494f421e0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:59.727206831Z"}]},"request_id":"2c44bbd7-a03d-4ce8-9e3f-8f82c129e04a","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213699.7315907} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"846003a8067358c1493d8df43eab6cc7","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"846003a8067358c1493d8df43eab6cc7"} gateway-1 | {"time_local":"17/Jul/2024:10:54:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.059","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"846003a8067358c1493d8df43eab6cc7"} device-1 | {"level":"info","message":"POST /devices? 201 51ms","method":"POST","requestID":"846003a8067358c1493d8df43eab6cc7","responseTime":51,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5OX0.DFNuMwPKqTBs-PbbpP-FHtTFU1_CXupzgx40dsLhBIA","level":"info","message":"auth send jwt","requestID":"8619d42e141a24f86128fd4b8c2eb685"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"8619d42e141a24f86128fd4b8c2eb685","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"8619d42e141a24f86128fd4b8c2eb685"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":412,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:54:59Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":412,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.686807,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:54:59Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"8619d42e141a24f86128fd4b8c2eb685","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213699,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzY5OX0.DFNuMwPKqTBs-PbbpP-FHtTFU1_CXupzgx40dsLhBIA"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"8619d42e141a24f86128fd4b8c2eb685","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F187daed5-dbfd-4d8f-9197-2622f043f77c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"80b97311-7d13-4aa0-9753-7e2683024e72","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213699.759476} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8619d42e141a24f86128fd4b8c2eb685","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bd1e2509-7e51-4277-b321-f5bc95a8f727","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213699.7643547} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"8619d42e141a24f86128fd4b8c2eb685","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F187daed5-dbfd-4d8f-9197-2622f043f77c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"5d93653e-c9b7-47ea-be2b-10fefb9c56ae","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213699.7755656} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"82e79c3b-c2d1-4d70-8fe5-9a938105091b","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213699.775869} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"8619d42e141a24f86128fd4b8c2eb685","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F187daed5-dbfd-4d8f-9197-2622f043f77c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F187daed5-dbfd-4d8f-9197-2622f043f77c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:59.775525146Z"}]},"request_id":"2debcf16-5e7f-4eee-9ba6-f7f7d84495a8","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213699.779386} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"8619d42e141a24f86128fd4b8c2eb685","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"8619d42e141a24f86128fd4b8c2eb685"} gateway-1 | {"time_local":"17/Jul/2024:10:54:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8619d42e141a24f86128fd4b8c2eb685"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"8619d42e141a24f86128fd4b8c2eb685","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwMH0.SuAye6dhoNmlaKbcN2VJlMC_k5tyukd2hHn7bwJJAl4","level":"info","message":"auth send jwt","requestID":"31400a575b1a03aa829659872d09a1c3"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"31400a575b1a03aa829659872d09a1c3","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"31400a575b1a03aa829659872d09a1c3"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":413,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:00Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":413,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.855958,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:00Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/187daed5-dbfd-4d8f-9197-2622f043f77c","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"31400a575b1a03aa829659872d09a1c3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/187daed5-dbfd-4d8f-9197-2622f043f77c","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213700,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwMH0.SuAye6dhoNmlaKbcN2VJlMC_k5tyukd2hHn7bwJJAl4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"31400a575b1a03aa829659872d09a1c3","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F187daed5-dbfd-4d8f-9197-2622f043f77c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F187daed5-dbfd-4d8f-9197-2622f043f77c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:59.775525146Z"}]},"request_id":"49e23897-aaff-4dc0-a6d8-272dd492115f","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213700.2736099} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"31400a575b1a03aa829659872d09a1c3","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"18cd1f12-5340-4696-8c83-87754cc0fefe","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213700.279219} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"31400a575b1a03aa829659872d09a1c3","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F187daed5-dbfd-4d8f-9197-2622f043f77c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F187daed5-dbfd-4d8f-9197-2622f043f77c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:59.775525146Z"}]},"request_id":"f6dae19f-591a-4444-bb15-d87ca8de0124","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213700.2915938} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"31400a575b1a03aa829659872d09a1c3","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"31400a575b1a03aa829659872d09a1c3"} device-1 | {"level":"info","message":"PATCH /devices/187daed5-dbfd-4d8f-9197-2622f043f77c 200 34ms","method":"PATCH","requestID":"31400a575b1a03aa829659872d09a1c3","responseTime":34,"status":200,"url":"/devices/187daed5-dbfd-4d8f-9197-2622f043f77c"} gateway-1 | {"time_local":"17/Jul/2024:10:55:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/187daed5-dbfd-4d8f-9197-2622f043f77c HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.042","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"31400a575b1a03aa829659872d09a1c3"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwMH0.SuAye6dhoNmlaKbcN2VJlMC_k5tyukd2hHn7bwJJAl4","level":"info","message":"auth send jwt","requestID":"0a12d87b8c503fe7d67601334fd418a0"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0a12d87b8c503fe7d67601334fd418a0","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"0a12d87b8c503fe7d67601334fd418a0"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":414,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:00Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":414,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.118593,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:00Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/187daed5-dbfd-4d8f-9197-2622f043f77c","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0a12d87b8c503fe7d67601334fd418a0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/187daed5-dbfd-4d8f-9197-2622f043f77c","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213700,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwMH0.SuAye6dhoNmlaKbcN2VJlMC_k5tyukd2hHn7bwJJAl4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0a12d87b8c503fe7d67601334fd418a0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"0a12d87b8c503fe7d67601334fd418a0"} gateway-1 | {"time_local":"17/Jul/2024:10:55:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/187daed5-dbfd-4d8f-9197-2622f043f77c/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.026","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"0a12d87b8c503fe7d67601334fd418a0"} device-1 | {"level":"info","message":"POST /devices/187daed5-dbfd-4d8f-9197-2622f043f77c/websocket 200 20ms","method":"POST","requestID":"0a12d87b8c503fe7d67601334fd418a0","responseTime":20,"status":200,"url":"/devices/187daed5-dbfd-4d8f-9197-2622f043f77c/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/187daed5-dbfd-4d8f-9197-2622f043f77c' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e2b8bec5792ecc89c9be13be9dcfc1ed","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"e2b8bec5792ecc89c9be13be9dcfc1ed","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"17/Jul/2024:10:55:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/8fc06bb7-1536-4ff0-8ef1-4e3494f421e0/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.005","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"e2b8bec5792ecc89c9be13be9dcfc1ed"} device-1 | {"level":"info","message":"OPTIONS /devices/8fc06bb7-1536-4ff0-8ef1-4e3494f421e0/websocket 200 1ms","method":"OPTIONS","requestID":"e2b8bec5792ecc89c9be13be9dcfc1ed","responseTime":1,"status":200,"url":"/devices/8fc06bb7-1536-4ff0-8ef1-4e3494f421e0/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwMX0.XWsSPWWMbVfzTrpJT8Ry-1LniKsbIwbIFmbCI6RZRm4","level":"info","message":"auth send jwt","requestID":"c351b2dbc6e26de4a9fb9926aa7e244a"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"c351b2dbc6e26de4a9fb9926aa7e244a","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"c351b2dbc6e26de4a9fb9926aa7e244a"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":415,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:01Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":415,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.324452,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:01Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8fc06bb7-1536-4ff0-8ef1-4e3494f421e0","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"c351b2dbc6e26de4a9fb9926aa7e244a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/8fc06bb7-1536-4ff0-8ef1-4e3494f421e0","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213701,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwMX0.XWsSPWWMbVfzTrpJT8Ry-1LniKsbIwbIFmbCI6RZRm4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c351b2dbc6e26de4a9fb9926aa7e244a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"c351b2dbc6e26de4a9fb9926aa7e244a"} gateway-1 | {"time_local":"17/Jul/2024:10:55:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/8fc06bb7-1536-4ff0-8ef1-4e3494f421e0/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.029","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"c351b2dbc6e26de4a9fb9926aa7e244a"} device-1 | {"level":"info","message":"POST /devices/8fc06bb7-1536-4ff0-8ef1-4e3494f421e0/websocket 200 22ms","method":"POST","requestID":"c351b2dbc6e26de4a9fb9926aa7e244a","responseTime":22,"status":200,"url":"/devices/8fc06bb7-1536-4ff0-8ef1-4e3494f421e0/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/8fc06bb7-1536-4ff0-8ef1-4e3494f421e0' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwMX0.XWsSPWWMbVfzTrpJT8Ry-1LniKsbIwbIFmbCI6RZRm4","level":"info","message":"auth send jwt","requestID":"32eced03ac555245adff0fe6903c4292"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"32eced03ac555245adff0fe6903c4292","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"32eced03ac555245adff0fe6903c4292"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":416,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:01Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":416,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.330353,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8fc06bb7-1536-4ff0-8ef1-4e3494f421e0","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"32eced03ac555245adff0fe6903c4292","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/8fc06bb7-1536-4ff0-8ef1-4e3494f421e0","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213701,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwMX0.XWsSPWWMbVfzTrpJT8Ry-1LniKsbIwbIFmbCI6RZRm4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"32eced03ac555245adff0fe6903c4292","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8fc06bb7-1536-4ff0-8ef1-4e3494f421e0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8fc06bb7-1536-4ff0-8ef1-4e3494f421e0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:59.727206831Z"}]},"request_id":"aaa5571d-a9e9-4f62-9f11-b4d4cab545d9","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213701.8719544} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"32eced03ac555245adff0fe6903c4292","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"32eced03ac555245adff0fe6903c4292"} device-1 | {"level":"info","message":"GET /devices/8fc06bb7-1536-4ff0-8ef1-4e3494f421e0? 200 18ms","method":"GET","requestID":"32eced03ac555245adff0fe6903c4292","responseTime":18,"status":200,"url":"/devices/8fc06bb7-1536-4ff0-8ef1-4e3494f421e0?"} gateway-1 | {"time_local":"17/Jul/2024:10:55:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8fc06bb7-1536-4ff0-8ef1-4e3494f421e0? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"32eced03ac555245adff0fe6903c4292"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwMX0.XWsSPWWMbVfzTrpJT8Ry-1LniKsbIwbIFmbCI6RZRm4","level":"info","message":"auth send jwt","requestID":"d603370c07f3a95e7d6b5884d285d31e"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"d603370c07f3a95e7d6b5884d285d31e","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d603370c07f3a95e7d6b5884d285d31e"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":417,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:01Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":417,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.677571,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/187daed5-dbfd-4d8f-9197-2622f043f77c","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"d603370c07f3a95e7d6b5884d285d31e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/187daed5-dbfd-4d8f-9197-2622f043f77c","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213701,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwMX0.XWsSPWWMbVfzTrpJT8Ry-1LniKsbIwbIFmbCI6RZRm4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d603370c07f3a95e7d6b5884d285d31e","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F187daed5-dbfd-4d8f-9197-2622f043f77c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F187daed5-dbfd-4d8f-9197-2622f043f77c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:59.775525146Z"}]},"request_id":"92ebe28b-5d3a-43cb-8498-aa6f215bff89","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213701.898086} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d603370c07f3a95e7d6b5884d285d31e","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d603370c07f3a95e7d6b5884d285d31e"} gateway-1 | {"time_local":"17/Jul/2024:10:55:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/187daed5-dbfd-4d8f-9197-2622f043f77c? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d603370c07f3a95e7d6b5884d285d31e"} device-1 | {"level":"info","message":"GET /devices/187daed5-dbfd-4d8f-9197-2622f043f77c? 200 19ms","method":"GET","requestID":"d603370c07f3a95e7d6b5884d285d31e","responseTime":19,"status":200,"url":"/devices/187daed5-dbfd-4d8f-9197-2622f043f77c?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwMX0.XWsSPWWMbVfzTrpJT8Ry-1LniKsbIwbIFmbCI6RZRm4","level":"info","message":"auth send jwt","requestID":"79593d53b0d88b190fc83bd2ee1985b5"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"79593d53b0d88b190fc83bd2ee1985b5","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"79593d53b0d88b190fc83bd2ee1985b5"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":418,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:01Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":418,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.328395,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:01Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"79593d53b0d88b190fc83bd2ee1985b5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213701,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwMX0.XWsSPWWMbVfzTrpJT8Ry-1LniKsbIwbIFmbCI6RZRm4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"79593d53b0d88b190fc83bd2ee1985b5","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5ece95cf-9b82-4dfb-be61-00c55a6b8e49"},"level":"info","message":"Attempting to run experiment","requestID":"79593d53b0d88b190fc83bd2ee1985b5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5ece95cf-9b82-4dfb-be61-00c55a6b8e49"},"level":"info","message":"Attempting to book experiment","requestID":"79593d53b0d88b190fc83bd2ee1985b5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5ece95cf-9b82-4dfb-be61-00c55a6b8e49"},"level":"info","message":"Successfully booked experiment","requestID":"79593d53b0d88b190fc83bd2ee1985b5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"04616930-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0461b750-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":419,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:01Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":419,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.808494,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8fc06bb7-1536-4ff0-8ef1-4e3494f421e0","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"04616930-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/8fc06bb7-1536-4ff0-8ef1-4e3494f421e0","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213701,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwMX0.XWsSPWWMbVfzTrpJT8Ry-1LniKsbIwbIFmbCI6RZRm4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"04616930-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48270","level":"info","msg":"Received request.","req_id":420,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:01Z"} authorization-1 | {"client_addr":"127.0.0.1:48270","level":"info","msg":"Sent response.","req_id":420,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.376463,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/187daed5-dbfd-4d8f-9197-2622f043f77c","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0461b750-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/187daed5-dbfd-4d8f-9197-2622f043f77c","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213701,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwMX0.XWsSPWWMbVfzTrpJT8Ry-1LniKsbIwbIFmbCI6RZRm4"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"0461b750-442b-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8fc06bb7-1536-4ff0-8ef1-4e3494f421e0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8fc06bb7-1536-4ff0-8ef1-4e3494f421e0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:59.727206831Z"}]},"request_id":"3f4e3be1-d6b0-48aa-8805-5c3a51d81d24","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213701.9679577} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"04616930-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F187daed5-dbfd-4d8f-9197-2622f043f77c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F187daed5-dbfd-4d8f-9197-2622f043f77c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:59.775525146Z"}]},"request_id":"aaba5a3d-b30f-4071-b39d-be9e9f80d28c","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213701.9727836} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"04616930-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0461b750-442b-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/8fc06bb7-1536-4ff0-8ef1-4e3494f421e0? 200 19ms","method":"GET","requestID":"04616930-442b-11ef-8685-a1e9f27e6f28","responseTime":19,"status":200,"url":"/devices/8fc06bb7-1536-4ff0-8ef1-4e3494f421e0?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0461b750-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/187daed5-dbfd-4d8f-9197-2622f043f77c? 200 22ms","method":"GET","requestID":"0461b750-442b-11ef-8685-a1e9f27e6f28","responseTime":22,"status":200,"url":"/devices/187daed5-dbfd-4d8f-9197-2622f043f77c?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5ece95cf-9b82-4dfb-be61-00c55a6b8e49"},"level":"info","message":"Setting up experiment","requestID":"79593d53b0d88b190fc83bd2ee1985b5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5ece95cf-9b82-4dfb-be61-00c55a6b8e49"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"79593d53b0d88b190fc83bd2ee1985b5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5ece95cf-9b82-4dfb-be61-00c55a6b8e49"},"level":"info","message":"Successfully locked booking for experiment","requestID":"79593d53b0d88b190fc83bd2ee1985b5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5ece95cf-9b82-4dfb-be61-00c55a6b8e49"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"79593d53b0d88b190fc83bd2ee1985b5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5ece95cf-9b82-4dfb-be61-00c55a6b8e49"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"79593d53b0d88b190fc83bd2ee1985b5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5ece95cf-9b82-4dfb-be61-00c55a6b8e49"},"level":"info","message":"Attempting to update booking for experiment","requestID":"79593d53b0d88b190fc83bd2ee1985b5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5ece95cf-9b82-4dfb-be61-00c55a6b8e49"},"level":"info","message":"Successfully updated booking for experiment","requestID":"79593d53b0d88b190fc83bd2ee1985b5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5ece95cf-9b82-4dfb-be61-00c55a6b8e49"},"level":"info","message":"Successfully set up experiment","requestID":"79593d53b0d88b190fc83bd2ee1985b5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"046cdae0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"046d2900-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"046d7720-442b-11ef-8685-a1e9f27e6f28"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5ece95cf-9b82-4dfb-be61-00c55a6b8e49"},"level":"info","message":"Successfully running experiment","requestID":"79593d53b0d88b190fc83bd2ee1985b5"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":421,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:02Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":421,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.943097,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:02Z"} authorization-1 | {"client_addr":"127.0.0.1:48270","level":"info","msg":"Received request.","req_id":422,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8fc06bb7-1536-4ff0-8ef1-4e3494f421e0","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"046cdae0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/8fc06bb7-1536-4ff0-8ef1-4e3494f421e0","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213701,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwMX0.XWsSPWWMbVfzTrpJT8Ry-1LniKsbIwbIFmbCI6RZRm4"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"046cdae0-442b-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48270","level":"info","msg":"Sent response.","req_id":422,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.124455,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/187daed5-dbfd-4d8f-9197-2622f043f77c","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"046d2900-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/187daed5-dbfd-4d8f-9197-2622f043f77c","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213701,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwMX0.XWsSPWWMbVfzTrpJT8Ry-1LniKsbIwbIFmbCI6RZRm4"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"046d2900-442b-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48272","level":"info","msg":"Received request.","req_id":423,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:02Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8fc06bb7-1536-4ff0-8ef1-4e3494f421e0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8fc06bb7-1536-4ff0-8ef1-4e3494f421e0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:59.727206831Z"}]},"request_id":"955f579b-d734-41d4-bbf1-bcc2ce2b52ed","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213702.047873} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8fc06bb7-1536-4ff0-8ef1-4e3494f421e0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"610d81d6-036a-4e7b-95a0-dfd4b39a4b91","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213702.0483668} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"046cdae0-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F187daed5-dbfd-4d8f-9197-2622f043f77c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F187daed5-dbfd-4d8f-9197-2622f043f77c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:59.775525146Z"}]},"request_id":"badb18a4-c98d-4a1f-8297-475dbc8fdb4e","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213702.0499392} authorization-1 | {"client_addr":"127.0.0.1:48272","level":"info","msg":"Sent response.","req_id":423,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.259807,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:02Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8fc06bb7-1536-4ff0-8ef1-4e3494f421e0","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"046d7720-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8fc06bb7-1536-4ff0-8ef1-4e3494f421e0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 15ms","method":"POST","requestID":"046d7720-442b-11ef-8685-a1e9f27e6f28","responseTime":15,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"046d2900-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"046cdae0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/8fc06bb7-1536-4ff0-8ef1-4e3494f421e0? 200 27ms","method":"GET","requestID":"046cdae0-442b-11ef-8685-a1e9f27e6f28","responseTime":27,"status":200,"url":"/devices/8fc06bb7-1536-4ff0-8ef1-4e3494f421e0?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"046d7720-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/8fc06bb7-1536-4ff0-8ef1-4e3494f421e0/signaling 200 25ms","method":"POST","requestID":"046d7720-442b-11ef-8685-a1e9f27e6f28","responseTime":25,"status":200,"url":"/devices/8fc06bb7-1536-4ff0-8ef1-4e3494f421e0/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"046d2900-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5ece95cf-9b82-4dfb-be61-00c55a6b8e49#owner@http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5ece95cf-9b82-4dfb-be61-00c55a6b8e49","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"65163f8b-20d2-42e2-9620-974798820f8b","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213702.0600588} device-1 | {"level":"info","message":"GET /devices/187daed5-dbfd-4d8f-9197-2622f043f77c? 200 28ms","method":"GET","requestID":"046d2900-442b-11ef-8685-a1e9f27e6f28","responseTime":28,"status":200,"url":"/devices/187daed5-dbfd-4d8f-9197-2622f043f77c?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"56f55edc-3824-473b-af3c-918cb72d8e19","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213702.0603774} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"047195d0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"79593d53b0d88b190fc83bd2ee1985b5","responseTime":21,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0471e3f0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":424,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:02Z"} authorization-1 | {"client_addr":"127.0.0.1:48270","level":"info","msg":"Received request.","req_id":425,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:02Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F187daed5-dbfd-4d8f-9197-2622f043f77c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c3572211-bcc4-41c2-9def-b929002c7cb6","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213702.0671165} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":424,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.160531,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:02Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/187daed5-dbfd-4d8f-9197-2622f043f77c","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"047195d0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/187daed5-dbfd-4d8f-9197-2622f043f77c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/5ece95cf-9b82-4dfb-be61-00c55a6b8e49","user":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"79593d53b0d88b190fc83bd2ee1985b5"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"047195d0-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8fc06bb7-1536-4ff0-8ef1-4e3494f421e0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b9199566-50e9-4aad-856c-90224040f998","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213702.068453} authorization-1 | {"client_addr":"127.0.0.1:48270","level":"info","msg":"Sent response.","req_id":425,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.434987,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:02Z"} gateway-1 | {"time_local":"17/Jul/2024:10:55:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1291","request_time":"0.163","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"79593d53b0d88b190fc83bd2ee1985b5"} experiment-1 | {"level":"info","message":"POST /experiments? 201 156ms","method":"POST","requestID":"79593d53b0d88b190fc83bd2ee1985b5","responseTime":156,"status":201,"url":"/experiments?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8fc06bb7-1536-4ff0-8ef1-4e3494f421e0","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0471e3f0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8fc06bb7-1536-4ff0-8ef1-4e3494f421e0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0471e3f0-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"047195d0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/187daed5-dbfd-4d8f-9197-2622f043f77c/signaling 200 12ms","method":"POST","requestID":"047195d0-442b-11ef-8685-a1e9f27e6f28","responseTime":12,"status":200,"url":"/devices/187daed5-dbfd-4d8f-9197-2622f043f77c/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwMn0.IFf2paniWp2pU1P_9Dzubo_9wkuhFIe-qE18N5V3BgE","level":"info","message":"auth send jwt","requestID":"601877d1d23946eb313f08c5c8784c8d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0471e3f0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/8fc06bb7-1536-4ff0-8ef1-4e3494f421e0/signaling 200 11ms","method":"POST","requestID":"0471e3f0-442b-11ef-8685-a1e9f27e6f28","responseTime":11,"status":200,"url":"/devices/8fc06bb7-1536-4ff0-8ef1-4e3494f421e0/signaling"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"601877d1d23946eb313f08c5c8784c8d","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"601877d1d23946eb313f08c5c8784c8d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"047406d0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":426,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:02Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":426,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.687418,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8fc06bb7-1536-4ff0-8ef1-4e3494f421e0","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"601877d1d23946eb313f08c5c8784c8d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/8fc06bb7-1536-4ff0-8ef1-4e3494f421e0","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213702,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwMn0.IFf2paniWp2pU1P_9Dzubo_9wkuhFIe-qE18N5V3BgE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"601877d1d23946eb313f08c5c8784c8d","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48270","level":"info","msg":"Received request.","req_id":427,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:02Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F187daed5-dbfd-4d8f-9197-2622f043f77c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e8513c0f-065a-42bb-800a-4a4d24a26942","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213702.081328} authorization-1 | {"client_addr":"127.0.0.1:48270","level":"info","msg":"Sent response.","req_id":427,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.627329,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:02Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/187daed5-dbfd-4d8f-9197-2622f043f77c","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"047406d0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/187daed5-dbfd-4d8f-9197-2622f043f77c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"047406d0-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8fc06bb7-1536-4ff0-8ef1-4e3494f421e0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8fc06bb7-1536-4ff0-8ef1-4e3494f421e0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:59.727206831Z"}]},"request_id":"c8b39266-ca45-4565-ab7a-e0f51794b29e","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213702.083426} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"601877d1d23946eb313f08c5c8784c8d","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"047406d0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/187daed5-dbfd-4d8f-9197-2622f043f77c/signaling 200 10ms","method":"POST","requestID":"047406d0-442b-11ef-8685-a1e9f27e6f28","responseTime":10,"status":200,"url":"/devices/187daed5-dbfd-4d8f-9197-2622f043f77c/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"601877d1d23946eb313f08c5c8784c8d"} gateway-1 | {"time_local":"17/Jul/2024:10:55:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8fc06bb7-1536-4ff0-8ef1-4e3494f421e0? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"601877d1d23946eb313f08c5c8784c8d"} device-1 | {"level":"info","message":"GET /devices/8fc06bb7-1536-4ff0-8ef1-4e3494f421e0? 200 13ms","method":"GET","requestID":"601877d1d23946eb313f08c5c8784c8d","responseTime":13,"status":200,"url":"/devices/8fc06bb7-1536-4ff0-8ef1-4e3494f421e0?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5ece95cf-9b82-4dfb-be61-00c55a6b8e49"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"79593d53b0d88b190fc83bd2ee1985b5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5ece95cf-9b82-4dfb-be61-00c55a6b8e49"},"level":"info","message":"Building connection plan","requestID":"79593d53b0d88b190fc83bd2ee1985b5"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"c207d47e-1138-4408-953d-8020e928bbe7"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"00955a52-00dd-4696-943c-cc8e5af44751"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"3d2e76bb-a889-428e-bb16-5461784fa359"}]},"level":"info","message":"Built pairwise service configurations","requestID":"79593d53b0d88b190fc83bd2ee1985b5"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/8fc06bb7-1536-4ff0-8ef1-4e3494f421e0"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/187daed5-dbfd-4d8f-9197-2622f043f77c"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"79593d53b0d88b190fc83bd2ee1985b5"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"047629b0-442b-11ef-8685-a1e9f27e6f28"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwMn0.IFf2paniWp2pU1P_9Dzubo_9wkuhFIe-qE18N5V3BgE","level":"info","message":"auth send jwt","requestID":"120ffa48823462525992af89aefd3579"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"120ffa48823462525992af89aefd3579","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":428,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:02Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"120ffa48823462525992af89aefd3579"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":428,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.676452,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:02Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"047629b0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213701,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwMX0.XWsSPWWMbVfzTrpJT8Ry-1LniKsbIwbIFmbCI6RZRm4"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"047629b0-442b-11ef-8685-a1e9f27e6f28","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":429,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:02Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":429,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.73666,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/187daed5-dbfd-4d8f-9197-2622f043f77c","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"120ffa48823462525992af89aefd3579","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/187daed5-dbfd-4d8f-9197-2622f043f77c","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213702,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwMn0.IFf2paniWp2pU1P_9Dzubo_9wkuhFIe-qE18N5V3BgE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"120ffa48823462525992af89aefd3579","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F187daed5-dbfd-4d8f-9197-2622f043f77c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F187daed5-dbfd-4d8f-9197-2622f043f77c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:54:59.775525146Z"}]},"request_id":"53d4f50b-2fb9-4f60-9030-208114e647fc","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213702.1024942} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"120ffa48823462525992af89aefd3579","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"9bb9f235-741d-4445-b2ea-231d696cbf36","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213702.103941} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1b550f91-07d6-4b7e-b55f-17c316e5b3da","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213702.1043255} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"047629b0-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"120ffa48823462525992af89aefd3579"} device-1 | {"level":"info","message":"GET /devices/187daed5-dbfd-4d8f-9197-2622f043f77c? 200 15ms","method":"GET","requestID":"120ffa48823462525992af89aefd3579","responseTime":15,"status":200,"url":"/devices/187daed5-dbfd-4d8f-9197-2622f043f77c?"} gateway-1 | {"time_local":"17/Jul/2024:10:55:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/187daed5-dbfd-4d8f-9197-2622f043f77c? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"120ffa48823462525992af89aefd3579"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"047629b0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"047629b0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/d46ce2ce-732e-478c-be5f-45b0159521ae'","requestID":"047629b0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/d46ce2ce-732e-478c-be5f-45b0159521ae'","requestID":"047629b0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"047629b0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 28ms","method":"POST","requestID":"047629b0-442b-11ef-8685-a1e9f27e6f28","responseTime":28,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"047629b0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/d46ce2ce-732e-478c-be5f-45b0159521ae","device":"8fc06bb7-1536-4ff0-8ef1-4e3494f421e0","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":false} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5ece95cf-9b82-4dfb-be61-00c55a6b8e49"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"79593d53b0d88b190fc83bd2ee1985b5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"047e8e20-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":430,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:02Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8fc06bb7-1536-4ff0-8ef1-4e3494f421e0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"60bc5d24-151d-43fb-9cf2-03eaefc0acaa","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213702.150292} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":430,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.042565,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:02Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8fc06bb7-1536-4ff0-8ef1-4e3494f421e0","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"047e8e20-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8fc06bb7-1536-4ff0-8ef1-4e3494f421e0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"047e8e20-442b-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"047e8e20-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/8fc06bb7-1536-4ff0-8ef1-4e3494f421e0/signaling 200 8ms","method":"POST","requestID":"047e8e20-442b-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/devices/8fc06bb7-1536-4ff0-8ef1-4e3494f421e0/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"048014c0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":431,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:02Z"} device-1 | {"device":"8fc06bb7-1536-4ff0-8ef1-4e3494f421e0","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"8fc06bb7-1536-4ff0-8ef1-4e3494f421e0","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F187daed5-dbfd-4d8f-9197-2622f043f77c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7154afc3-615f-4fd5-9666-3716804a35ba","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213702.1618736} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":431,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.045434,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:02Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/187daed5-dbfd-4d8f-9197-2622f043f77c","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"048014c0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/187daed5-dbfd-4d8f-9197-2622f043f77c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"048014c0-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"048014c0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/187daed5-dbfd-4d8f-9197-2622f043f77c/signaling 200 10ms","method":"POST","requestID":"048014c0-442b-11ef-8685-a1e9f27e6f28","responseTime":10,"status":200,"url":"/devices/187daed5-dbfd-4d8f-9197-2622f043f77c/signaling"} device-1 | {"device":"187daed5-dbfd-4d8f-9197-2622f043f77c","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"d46ce2ce-732e-478c-be5f-45b0159521ae","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 632144881066024749 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=msid-semantic: WMS\r\nm=application 9 DTLS/SCTP 5000\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:JSdw\r\na=ice-pwd:Pb4rJPJh9YdwAE6w9tNI+bPx\r\na=ice-options:trickle\r\na=fingerprint:sha-256 21:0C:B3:2E:3D:7B:93:1F:22:2D:6D:91:1F:6D:7D:55:4C:B7:EA:BB:6F:AC:0A:0D:E5:90:5B:40:D9:42:FF:AB\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"8fc06bb7-1536-4ff0-8ef1-4e3494f421e0","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:2892136201 1 udp 2113937151 0f98093a-054a-4ec0-9ce3-360f79eb3ca5.local 36549 typ host generation 0 ufrag JSdw network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"8fc06bb7-1536-4ff0-8ef1-4e3494f421e0","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"8fc06bb7-1536-4ff0-8ef1-4e3494f421e0","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"content":{"candidate":"candidate:676271478 1 udp 1677729535 141.24.211.56 36549 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag JSdw network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"8fc06bb7-1536-4ff0-8ef1-4e3494f421e0","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/d46ce2ce-732e-478c-be5f-45b0159521ae' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d46ce2ce-732e-478c-be5f-45b0159521ae","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"cdc5d8451e718001a0bad3765aff76ea","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"cdc5d8451e718001a0bad3765aff76ea","responseTime":2,"status":200,"url":"/auth"} device-1 | {"device":"187daed5-dbfd-4d8f-9197-2622f043f77c","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"187daed5-dbfd-4d8f-9197-2622f043f77c","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"187daed5-dbfd-4d8f-9197-2622f043f77c","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/8fc06bb7-1536-4ff0-8ef1-4e3494f421e0'"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/8fc06bb7-1536-4ff0-8ef1-4e3494f421e0"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/187daed5-dbfd-4d8f-9197-2622f043f77c"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/d46ce2ce-732e-478c-be5f-45b0159521ae"}}},"level":"info","message":"received a callback","requestID":"cdc5d8451e718001a0bad3765aff76ea"} device-1 | {"device":"8fc06bb7-1536-4ff0-8ef1-4e3494f421e0","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 9ms","method":"POST","requestID":"cdc5d8451e718001a0bad3765aff76ea","responseTime":9,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:55:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch","requestID":"cdc5d8451e718001a0bad3765aff76ea"} device-1 | {"device":"187daed5-dbfd-4d8f-9197-2622f043f77c","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"187daed5-dbfd-4d8f-9197-2622f043f77c","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"8fc06bb7-1536-4ff0-8ef1-4e3494f421e0","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"8fc06bb7-1536-4ff0-8ef1-4e3494f421e0","deviceName":"JS Device 1","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"d46ce2ce-732e-478c-be5f-45b0159521ae","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"d46ce2ce-732e-478c-be5f-45b0159521ae","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/d46ce2ce-732e-478c-be5f-45b0159521ae' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d46ce2ce-732e-478c-be5f-45b0159521ae","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"33f9cb35ccdcbe412dec7205fe2b1bf8","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"33f9cb35ccdcbe412dec7205fe2b1bf8","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/8fc06bb7-1536-4ff0-8ef1-4e3494f421e0"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/187daed5-dbfd-4d8f-9197-2622f043f77c"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/d46ce2ce-732e-478c-be5f-45b0159521ae"}}},"level":"info","message":"received a callback","requestID":"33f9cb35ccdcbe412dec7205fe2b1bf8"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"05bdebf0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":432,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:04Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd46ce2ce-732e-478c-be5f-45b0159521ae","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0c731e1c-ed0a-4d78-84e9-c22001a61071","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213704.2440648} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":432,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.495725,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/d46ce2ce-732e-478c-be5f-45b0159521ae","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"05bdebf0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/d46ce2ce-732e-478c-be5f-45b0159521ae","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"05bdebf0-442b-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"05bdebf0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /peerconnections/d46ce2ce-732e-478c-be5f-45b0159521ae 200 8ms","method":"GET","requestID":"05bdebf0-442b-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/peerconnections/d46ce2ce-732e-478c-be5f-45b0159521ae"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 35ms","method":"POST","requestID":"33f9cb35ccdcbe412dec7205fe2b1bf8","responseTime":35,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:55:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.038","http_referrer":"","http_user_agent":"node-fetch","requestID":"33f9cb35ccdcbe412dec7205fe2b1bf8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"05c27fd0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":433,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:04Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8fc06bb7-1536-4ff0-8ef1-4e3494f421e0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4d302aa9-18d5-40d1-af1c-2cf358b1ec2d","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213704.273914} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":433,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.483657,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8fc06bb7-1536-4ff0-8ef1-4e3494f421e0","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"05c27fd0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8fc06bb7-1536-4ff0-8ef1-4e3494f421e0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"05c27fd0-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"05c27fd0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/8fc06bb7-1536-4ff0-8ef1-4e3494f421e0/signaling 200 8ms","method":"POST","requestID":"05c27fd0-442b-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/devices/8fc06bb7-1536-4ff0-8ef1-4e3494f421e0/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"05c42d80-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":434,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:04Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F187daed5-dbfd-4d8f-9197-2622f043f77c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6a22f6fd-94bf-439d-bfe7-5815f4a898b1","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213704.285422} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":434,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.822353,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/187daed5-dbfd-4d8f-9197-2622f043f77c","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"05c42d80-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/187daed5-dbfd-4d8f-9197-2622f043f77c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"05c42d80-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"05c42d80-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/187daed5-dbfd-4d8f-9197-2622f043f77c/signaling 200 9ms","method":"POST","requestID":"05c42d80-442b-11ef-8685-a1e9f27e6f28","responseTime":9,"status":200,"url":"/devices/187daed5-dbfd-4d8f-9197-2622f043f77c/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwNH0.EBdyPEQExVK-0-mBWAAKgPbNQIURIC80v6TiJ9Z30Po","level":"info","message":"auth send jwt","requestID":"6cffccc8d35dfe318e82e1c87db5a713"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6cffccc8d35dfe318e82e1c87db5a713","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/5ece95cf-9b82-4dfb-be61-00c55a6b8e49","requestID":"6cffccc8d35dfe318e82e1c87db5a713"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":435,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:04Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":435,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.946862,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/5ece95cf-9b82-4dfb-be61-00c55a6b8e49","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"6cffccc8d35dfe318e82e1c87db5a713","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:http://localhost/experiments/5ece95cf-9b82-4dfb-be61-00c55a6b8e49","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213704,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwNH0.EBdyPEQExVK-0-mBWAAKgPbNQIURIC80v6TiJ9Z30Po"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6cffccc8d35dfe318e82e1c87db5a713","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/5ece95cf-9b82-4dfb-be61-00c55a6b8e49","requestID":"6cffccc8d35dfe318e82e1c87db5a713"} experiment-1 | {"level":"info","message":"GET /experiments/5ece95cf-9b82-4dfb-be61-00c55a6b8e49 200 14ms","method":"GET","requestID":"6cffccc8d35dfe318e82e1c87db5a713","responseTime":14,"status":200,"url":"/experiments/5ece95cf-9b82-4dfb-be61-00c55a6b8e49"} gateway-1 | {"time_local":"17/Jul/2024:10:55:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/5ece95cf-9b82-4dfb-be61-00c55a6b8e49 HTTP/1.1","status": "200","body_bytes_sent":"1364","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6cffccc8d35dfe318e82e1c87db5a713"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwNH0.EBdyPEQExVK-0-mBWAAKgPbNQIURIC80v6TiJ9Z30Po","level":"info","message":"auth send jwt","requestID":"14b4081bcffd134504bdbaf24a7e54d8"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"14b4081bcffd134504bdbaf24a7e54d8","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/5ece95cf-9b82-4dfb-be61-00c55a6b8e49","requestID":"14b4081bcffd134504bdbaf24a7e54d8"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":436,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:04Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":436,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.687972,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:04Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/5ece95cf-9b82-4dfb-be61-00c55a6b8e49","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"14b4081bcffd134504bdbaf24a7e54d8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:http://localhost/experiments/5ece95cf-9b82-4dfb-be61-00c55a6b8e49","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213704,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwNH0.EBdyPEQExVK-0-mBWAAKgPbNQIURIC80v6TiJ9Z30Po"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"14b4081bcffd134504bdbaf24a7e54d8","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5ece95cf-9b82-4dfb-be61-00c55a6b8e49"},"level":"info","message":"Attempting to finish experiment","requestID":"14b4081bcffd134504bdbaf24a7e54d8"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"05d03b70-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":437,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:04Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":437,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.381947,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:04Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/d46ce2ce-732e-478c-be5f-45b0159521ae","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"05d03b70-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"peerconnection:http://localhost/peerconnections/d46ce2ce-732e-478c-be5f-45b0159521ae","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213704,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwNH0.EBdyPEQExVK-0-mBWAAKgPbNQIURIC80v6TiJ9Z30Po"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"05d03b70-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/d46ce2ce-732e-478c-be5f-45b0159521ae","device":"8fc06bb7-1536-4ff0-8ef1-4e3494f421e0","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"187daed5-dbfd-4d8f-9197-2622f043f77c","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"187daed5-dbfd-4d8f-9197-2622f043f77c","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"187daed5-dbfd-4d8f-9197-2622f043f77c","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/d46ce2ce-732e-478c-be5f-45b0159521ae' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/d46ce2ce-732e-478c-be5f-45b0159521ae' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d46ce2ce-732e-478c-be5f-45b0159521ae","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd46ce2ce-732e-478c-be5f-45b0159521ae': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd46ce2ce-732e-478c-be5f-45b0159521ae","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]},"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":null},"raw_response":{},"request_id":"50ff0248-ce61-4c59-9bd6-6be2cc2f5c4e","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213704.3846788} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2ff8a7b7b9da202e4e9b21784a308fa5","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"eeba8878-8716-486a-ba40-97b9185e3b40","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213704.3850708} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"2ff8a7b7b9da202e4e9b21784a308fa5","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/8fc06bb7-1536-4ff0-8ef1-4e3494f421e0"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/187daed5-dbfd-4d8f-9197-2622f043f77c"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/d46ce2ce-732e-478c-be5f-45b0159521ae"}}},"level":"info","message":"received a callback","requestID":"2ff8a7b7b9da202e4e9b21784a308fa5"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4a5df0a0f00015109327f077abe78c94","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"4a5df0a0f00015109327f077abe78c94","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"05d03b70-442b-11ef-8685-a1e9f27e6f28","responseTime":11,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/8fc06bb7-1536-4ff0-8ef1-4e3494f421e0"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/187daed5-dbfd-4d8f-9197-2622f043f77c"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/d46ce2ce-732e-478c-be5f-45b0159521ae"}}},"level":"info","message":"received a callback","requestID":"4a5df0a0f00015109327f077abe78c94"} device-1 | {"data":{"peerconnection":"d46ce2ce-732e-478c-be5f-45b0159521ae","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"05d03b70-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"DELETE /peerconnections/d46ce2ce-732e-478c-be5f-45b0159521ae 204 49ms","method":"DELETE","requestID":"05d03b70-442b-11ef-8685-a1e9f27e6f28","responseTime":49,"status":204,"url":"/peerconnections/d46ce2ce-732e-478c-be5f-45b0159521ae"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5ece95cf-9b82-4dfb-be61-00c55a6b8e49"},"level":"info","message":"Successfully finished experiment","requestID":"14b4081bcffd134504bdbaf24a7e54d8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"05db37f0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":438,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:04Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8fc06bb7-1536-4ff0-8ef1-4e3494f421e0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"746255fa-af4c-4cae-9fc4-60f5cc6ac8ce","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213704.439258} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":438,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.089879,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8fc06bb7-1536-4ff0-8ef1-4e3494f421e0","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"05db37f0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8fc06bb7-1536-4ff0-8ef1-4e3494f421e0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"05db37f0-442b-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"05db37f0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/8fc06bb7-1536-4ff0-8ef1-4e3494f421e0/signaling 200 14ms","method":"POST","requestID":"05db37f0-442b-11ef-8685-a1e9f27e6f28","responseTime":14,"status":200,"url":"/devices/8fc06bb7-1536-4ff0-8ef1-4e3494f421e0/signaling"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5ece95cf-9b82-4dfb-be61-00c55a6b8e49': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5ece95cf-9b82-4dfb-be61-00c55a6b8e49","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]},"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":null},"raw_response":{},"request_id":"22bbb9d7-463c-4ae6-b2dc-6a3e91d1153e","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213704.4472985} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c6c0ab0c-00fe-40c2-967a-3891ac25ee68","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213704.4474795} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"05ddd000-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"14b4081bcffd134504bdbaf24a7e54d8","responseTime":21,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":439,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:04Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F187daed5-dbfd-4d8f-9197-2622f043f77c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"66a80716-22a5-44e9-aede-b2e645a53277","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213704.4556544} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":439,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.916204,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/187daed5-dbfd-4d8f-9197-2622f043f77c","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"05ddd000-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/187daed5-dbfd-4d8f-9197-2622f043f77c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"05ddd000-442b-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"05ddd000-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/187daed5-dbfd-4d8f-9197-2622f043f77c/signaling 200 12ms","method":"POST","requestID":"05ddd000-442b-11ef-8685-a1e9f27e6f28","responseTime":12,"status":200,"url":"/devices/187daed5-dbfd-4d8f-9197-2622f043f77c/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/5ece95cf-9b82-4dfb-be61-00c55a6b8e49","requestID":"14b4081bcffd134504bdbaf24a7e54d8"} gateway-1 | {"time_local":"17/Jul/2024:10:55:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/5ece95cf-9b82-4dfb-be61-00c55a6b8e49 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.186","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"14b4081bcffd134504bdbaf24a7e54d8"} gateway-1 | {"time_local":"17/Jul/2024:10:55:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2835","request_time":"4.201","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"b2de6ec39baf082d1615ba64be8aa163"} experiment-1 | {"level":"info","message":"DELETE /experiments/5ece95cf-9b82-4dfb-be61-00c55a6b8e49 204 183ms","method":"DELETE","requestID":"14b4081bcffd134504bdbaf24a7e54d8","responseTime":183,"status":204,"url":"/experiments/5ece95cf-9b82-4dfb-be61-00c55a6b8e49"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 142ms","method":"POST","requestID":"2ff8a7b7b9da202e4e9b21784a308fa5","responseTime":142,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:55:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.146","http_referrer":"","http_user_agent":"node-fetch","requestID":"2ff8a7b7b9da202e4e9b21784a308fa5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwNH0.EBdyPEQExVK-0-mBWAAKgPbNQIURIC80v6TiJ9Z30Po","level":"info","message":"auth send jwt","requestID":"c51f2380c23a577c9d9f58015361ec10"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 142ms","method":"POST","requestID":"4a5df0a0f00015109327f077abe78c94","responseTime":142,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:55:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.148","http_referrer":"","http_user_agent":"node-fetch","requestID":"4a5df0a0f00015109327f077abe78c94"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c51f2380c23a577c9d9f58015361ec10","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"c51f2380c23a577c9d9f58015361ec10"} gateway-1 | {"time_local":"17/Jul/2024:10:55:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2747","request_time":"2.701","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"71ac3f0d45714e09c38f9438a05d8b7b"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/187daed5-dbfd-4d8f-9197-2622f043f77c' closed"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":440,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:04Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":440,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.033384,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:04Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"c51f2380c23a577c9d9f58015361ec10","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213704,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwNH0.EBdyPEQExVK-0-mBWAAKgPbNQIURIC80v6TiJ9Z30Po"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c51f2380c23a577c9d9f58015361ec10","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/8fc06bb7-1536-4ff0-8ef1-4e3494f421e0' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8bf9349f-dd44-487f-ada5-5c2b76d30990","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"2494129d-3fd1-4f83-b6ab-37e8d6ed3200","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213704.5534878} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c51f2380c23a577c9d9f58015361ec10","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9d221980-a859-4c83-938b-26238c695c96","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213704.5585828} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"c51f2380c23a577c9d9f58015361ec10","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8bf9349f-dd44-487f-ada5-5c2b76d30990","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"e22e754b-7f1a-48c5-8471-5c1939e83695","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213704.5734596} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f402f47d-f2df-42d7-9ab3-35cd452931ec","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213704.5735834} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"c51f2380c23a577c9d9f58015361ec10","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8bf9349f-dd44-487f-ada5-5c2b76d30990","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8bf9349f-dd44-487f-ada5-5c2b76d30990","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:04.573423538Z"}]},"request_id":"c472b8a9-cdbf-4a5e-a69f-9ff5cecc5cec","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213704.5776513} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"c51f2380c23a577c9d9f58015361ec10","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"c51f2380c23a577c9d9f58015361ec10"} gateway-1 | {"time_local":"17/Jul/2024:10:55:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.052","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c51f2380c23a577c9d9f58015361ec10"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"c51f2380c23a577c9d9f58015361ec10","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwNH0.EBdyPEQExVK-0-mBWAAKgPbNQIURIC80v6TiJ9Z30Po","level":"info","message":"auth send jwt","requestID":"6381eba57937b9853709342a7066ba20"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"6381eba57937b9853709342a7066ba20","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"6381eba57937b9853709342a7066ba20"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":441,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:04Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":441,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.759285,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:04Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"6381eba57937b9853709342a7066ba20","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213704,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwNH0.EBdyPEQExVK-0-mBWAAKgPbNQIURIC80v6TiJ9Z30Po"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"6381eba57937b9853709342a7066ba20","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa8eb080-07a3-4c66-ab6b-8202cc1bf5b9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"82e6be21-4c84-469d-a030-8bdd32b86640","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213704.6004484} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6381eba57937b9853709342a7066ba20","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6c278ed1-ecda-465b-b7b4-11ce58a15e8a","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213704.6054616} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"6381eba57937b9853709342a7066ba20","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa8eb080-07a3-4c66-ab6b-8202cc1bf5b9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"dd509922-9c5d-42be-8c33-66a95d2155e2","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213704.6157203} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"79c3840a-2d76-4116-a2e9-a15c87521852","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213704.6158404} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"6381eba57937b9853709342a7066ba20","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa8eb080-07a3-4c66-ab6b-8202cc1bf5b9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa8eb080-07a3-4c66-ab6b-8202cc1bf5b9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:04.615699115Z"}]},"request_id":"fc57720a-604c-4bb2-9f83-462e028ea2ca","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213704.6204493} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6381eba57937b9853709342a7066ba20","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"6381eba57937b9853709342a7066ba20"} gateway-1 | {"time_local":"17/Jul/2024:10:55:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.042","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6381eba57937b9853709342a7066ba20"} device-1 | {"level":"info","message":"POST /devices? 201 38ms","method":"POST","requestID":"6381eba57937b9853709342a7066ba20","responseTime":38,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwNX0.FwwIus9cz-PtH0A-aDfcfeEf0r2ORIbML278dNdw2nM","level":"info","message":"auth send jwt","requestID":"fe3ea680609206cf8ab56dfce7439a9e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"fe3ea680609206cf8ab56dfce7439a9e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"fe3ea680609206cf8ab56dfce7439a9e"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":442,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:05Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":442,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.873958,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:05Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8bf9349f-dd44-487f-ada5-5c2b76d30990","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"fe3ea680609206cf8ab56dfce7439a9e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/8bf9349f-dd44-487f-ada5-5c2b76d30990","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213705,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwNX0.FwwIus9cz-PtH0A-aDfcfeEf0r2ORIbML278dNdw2nM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fe3ea680609206cf8ab56dfce7439a9e","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8bf9349f-dd44-487f-ada5-5c2b76d30990","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8bf9349f-dd44-487f-ada5-5c2b76d30990","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:04.573423538Z"}]},"request_id":"774e7bb2-68df-4b8e-8239-1688767f0279","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213705.1184337} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"fe3ea680609206cf8ab56dfce7439a9e","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b700cadf-e5dc-467c-8f4c-894410e33bf5","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213705.129807} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"fe3ea680609206cf8ab56dfce7439a9e","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8bf9349f-dd44-487f-ada5-5c2b76d30990","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8bf9349f-dd44-487f-ada5-5c2b76d30990","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:04.573423538Z"}]},"request_id":"6f29c30a-2a14-446f-a295-b57a068daa37","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213705.1422844} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"fe3ea680609206cf8ab56dfce7439a9e","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"fe3ea680609206cf8ab56dfce7439a9e"} gateway-1 | {"time_local":"17/Jul/2024:10:55:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/8bf9349f-dd44-487f-ada5-5c2b76d30990 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.048","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"fe3ea680609206cf8ab56dfce7439a9e"} device-1 | {"level":"info","message":"PATCH /devices/8bf9349f-dd44-487f-ada5-5c2b76d30990 200 41ms","method":"PATCH","requestID":"fe3ea680609206cf8ab56dfce7439a9e","responseTime":41,"status":200,"url":"/devices/8bf9349f-dd44-487f-ada5-5c2b76d30990"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwNX0.FwwIus9cz-PtH0A-aDfcfeEf0r2ORIbML278dNdw2nM","level":"info","message":"auth send jwt","requestID":"024a8d596b9724ad87220830df7a8545"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"024a8d596b9724ad87220830df7a8545","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"024a8d596b9724ad87220830df7a8545"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":443,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:05Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":443,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.134058,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:05Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8bf9349f-dd44-487f-ada5-5c2b76d30990","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"024a8d596b9724ad87220830df7a8545","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/8bf9349f-dd44-487f-ada5-5c2b76d30990","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213705,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwNX0.FwwIus9cz-PtH0A-aDfcfeEf0r2ORIbML278dNdw2nM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"024a8d596b9724ad87220830df7a8545","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"024a8d596b9724ad87220830df7a8545"} gateway-1 | {"time_local":"17/Jul/2024:10:55:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/8bf9349f-dd44-487f-ada5-5c2b76d30990/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.028","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"024a8d596b9724ad87220830df7a8545"} device-1 | {"level":"info","message":"POST /devices/8bf9349f-dd44-487f-ada5-5c2b76d30990/websocket 200 21ms","method":"POST","requestID":"024a8d596b9724ad87220830df7a8545","responseTime":21,"status":200,"url":"/devices/8bf9349f-dd44-487f-ada5-5c2b76d30990/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/8bf9349f-dd44-487f-ada5-5c2b76d30990' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"14f0a35abd5e27392842761b9ee3fa80","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"14f0a35abd5e27392842761b9ee3fa80","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"17/Jul/2024:10:55:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.005","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"14f0a35abd5e27392842761b9ee3fa80"} device-1 | {"level":"info","message":"OPTIONS /devices/aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9/websocket 200 2ms","method":"OPTIONS","requestID":"14f0a35abd5e27392842761b9ee3fa80","responseTime":2,"status":200,"url":"/devices/aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwNn0.F0MiTACHcqoGsu75pPXUINXYGX-xDYBRY1ii0-s5QUU","level":"info","message":"auth send jwt","requestID":"90227dfac272072f6d3f62c674f02d8f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"90227dfac272072f6d3f62c674f02d8f","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"90227dfac272072f6d3f62c674f02d8f"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":444,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:06Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":444,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.333532,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:06Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"90227dfac272072f6d3f62c674f02d8f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213706,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwNn0.F0MiTACHcqoGsu75pPXUINXYGX-xDYBRY1ii0-s5QUU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"90227dfac272072f6d3f62c674f02d8f","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"90227dfac272072f6d3f62c674f02d8f"} gateway-1 | {"time_local":"17/Jul/2024:10:55:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.027","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"90227dfac272072f6d3f62c674f02d8f"} device-1 | {"level":"info","message":"POST /devices/aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9/websocket 200 21ms","method":"POST","requestID":"90227dfac272072f6d3f62c674f02d8f","responseTime":21,"status":200,"url":"/devices/aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwNn0.F0MiTACHcqoGsu75pPXUINXYGX-xDYBRY1ii0-s5QUU","level":"info","message":"auth send jwt","requestID":"8f0199b8d12db02e534e8848e02e3f77"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"8f0199b8d12db02e534e8848e02e3f77","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8f0199b8d12db02e534e8848e02e3f77"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":445,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:06Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":445,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.179554,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8bf9349f-dd44-487f-ada5-5c2b76d30990","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"8f0199b8d12db02e534e8848e02e3f77","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/8bf9349f-dd44-487f-ada5-5c2b76d30990","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213706,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwNn0.F0MiTACHcqoGsu75pPXUINXYGX-xDYBRY1ii0-s5QUU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8f0199b8d12db02e534e8848e02e3f77","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8bf9349f-dd44-487f-ada5-5c2b76d30990","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8bf9349f-dd44-487f-ada5-5c2b76d30990","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:04.573423538Z"}]},"request_id":"d008b145-db77-4eb3-88b6-f48322d01fb3","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213706.6956403} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8f0199b8d12db02e534e8848e02e3f77","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8f0199b8d12db02e534e8848e02e3f77"} gateway-1 | {"time_local":"17/Jul/2024:10:55:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8bf9349f-dd44-487f-ada5-5c2b76d30990? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8f0199b8d12db02e534e8848e02e3f77"} device-1 | {"level":"info","message":"GET /devices/8bf9349f-dd44-487f-ada5-5c2b76d30990? 200 20ms","method":"GET","requestID":"8f0199b8d12db02e534e8848e02e3f77","responseTime":20,"status":200,"url":"/devices/8bf9349f-dd44-487f-ada5-5c2b76d30990?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwNn0.F0MiTACHcqoGsu75pPXUINXYGX-xDYBRY1ii0-s5QUU","level":"info","message":"auth send jwt","requestID":"dd2bfe041f5067979e70c7185a8cc8dd"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"dd2bfe041f5067979e70c7185a8cc8dd","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"dd2bfe041f5067979e70c7185a8cc8dd"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":446,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:06Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":446,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.225046,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"dd2bfe041f5067979e70c7185a8cc8dd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213706,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwNn0.F0MiTACHcqoGsu75pPXUINXYGX-xDYBRY1ii0-s5QUU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"dd2bfe041f5067979e70c7185a8cc8dd","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa8eb080-07a3-4c66-ab6b-8202cc1bf5b9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa8eb080-07a3-4c66-ab6b-8202cc1bf5b9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:04.615699115Z"}]},"request_id":"6984afc6-abfa-4978-a58a-b91723400f5e","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213706.7249672} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"dd2bfe041f5067979e70c7185a8cc8dd","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"dd2bfe041f5067979e70c7185a8cc8dd"} gateway-1 | {"time_local":"17/Jul/2024:10:55:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"dd2bfe041f5067979e70c7185a8cc8dd"} device-1 | {"level":"info","message":"GET /devices/aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9? 200 19ms","method":"GET","requestID":"dd2bfe041f5067979e70c7185a8cc8dd","responseTime":19,"status":200,"url":"/devices/aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwNn0.F0MiTACHcqoGsu75pPXUINXYGX-xDYBRY1ii0-s5QUU","level":"info","message":"auth send jwt","requestID":"af48a567ba99fa8f37d799cbaf4f9091"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"af48a567ba99fa8f37d799cbaf4f9091","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"af48a567ba99fa8f37d799cbaf4f9091"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":447,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:06Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":447,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.148596,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:06Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"af48a567ba99fa8f37d799cbaf4f9091","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213706,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwNn0.F0MiTACHcqoGsu75pPXUINXYGX-xDYBRY1ii0-s5QUU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"af48a567ba99fa8f37d799cbaf4f9091","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e09a00d6-0e33-4b7d-8ca7-d170693c78a7"},"level":"info","message":"Attempting to run experiment","requestID":"af48a567ba99fa8f37d799cbaf4f9091"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e09a00d6-0e33-4b7d-8ca7-d170693c78a7"},"level":"info","message":"Attempting to book experiment","requestID":"af48a567ba99fa8f37d799cbaf4f9091"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e09a00d6-0e33-4b7d-8ca7-d170693c78a7"},"level":"info","message":"Successfully booked experiment","requestID":"af48a567ba99fa8f37d799cbaf4f9091"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0741f3e0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"07424200-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":448,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:06Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":448,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.621162,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8bf9349f-dd44-487f-ada5-5c2b76d30990","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0741f3e0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/8bf9349f-dd44-487f-ada5-5c2b76d30990","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213706,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwNn0.F0MiTACHcqoGsu75pPXUINXYGX-xDYBRY1ii0-s5QUU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0741f3e0-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48284","level":"info","msg":"Received request.","req_id":449,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:06Z"} authorization-1 | {"client_addr":"127.0.0.1:48284","level":"info","msg":"Sent response.","req_id":449,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.95025,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"07424200-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213706,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwNn0.F0MiTACHcqoGsu75pPXUINXYGX-xDYBRY1ii0-s5QUU"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"07424200-442b-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8bf9349f-dd44-487f-ada5-5c2b76d30990","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8bf9349f-dd44-487f-ada5-5c2b76d30990","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:04.573423538Z"}]},"request_id":"7b3183eb-011e-41c1-9e91-00dff81a536a","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213706.7930899} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0741f3e0-442b-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0741f3e0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa8eb080-07a3-4c66-ab6b-8202cc1bf5b9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa8eb080-07a3-4c66-ab6b-8202cc1bf5b9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:04.615699115Z"}]},"request_id":"4ba8222d-0ae9-4ea7-8bc8-9258c04cdc2d","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213706.7975671} device-1 | {"level":"info","message":"GET /devices/8bf9349f-dd44-487f-ada5-5c2b76d30990? 200 16ms","method":"GET","requestID":"0741f3e0-442b-11ef-8685-a1e9f27e6f28","responseTime":16,"status":200,"url":"/devices/8bf9349f-dd44-487f-ada5-5c2b76d30990?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"07424200-442b-11ef-8685-a1e9f27e6f28","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"07424200-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9? 200 18ms","method":"GET","requestID":"07424200-442b-11ef-8685-a1e9f27e6f28","responseTime":18,"status":200,"url":"/devices/aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e09a00d6-0e33-4b7d-8ca7-d170693c78a7"},"level":"info","message":"Setting up experiment","requestID":"af48a567ba99fa8f37d799cbaf4f9091"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e09a00d6-0e33-4b7d-8ca7-d170693c78a7"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"af48a567ba99fa8f37d799cbaf4f9091"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e09a00d6-0e33-4b7d-8ca7-d170693c78a7"},"level":"info","message":"Successfully locked booking for experiment","requestID":"af48a567ba99fa8f37d799cbaf4f9091"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e09a00d6-0e33-4b7d-8ca7-d170693c78a7"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"af48a567ba99fa8f37d799cbaf4f9091"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e09a00d6-0e33-4b7d-8ca7-d170693c78a7"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"af48a567ba99fa8f37d799cbaf4f9091"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e09a00d6-0e33-4b7d-8ca7-d170693c78a7"},"level":"info","message":"Attempting to update booking for experiment","requestID":"af48a567ba99fa8f37d799cbaf4f9091"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e09a00d6-0e33-4b7d-8ca7-d170693c78a7"},"level":"info","message":"Successfully updated booking for experiment","requestID":"af48a567ba99fa8f37d799cbaf4f9091"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e09a00d6-0e33-4b7d-8ca7-d170693c78a7"},"level":"info","message":"Successfully set up experiment","requestID":"af48a567ba99fa8f37d799cbaf4f9091"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"074bb7e0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"074c0600-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"074c5420-442b-11ef-8685-a1e9f27e6f28"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e09a00d6-0e33-4b7d-8ca7-d170693c78a7"},"level":"info","message":"Successfully running experiment","requestID":"af48a567ba99fa8f37d799cbaf4f9091"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":450,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:06Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":450,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.193953,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:06Z"} authorization-1 | {"client_addr":"127.0.0.1:48284","level":"info","msg":"Received request.","req_id":451,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8bf9349f-dd44-487f-ada5-5c2b76d30990","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"074bb7e0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/8bf9349f-dd44-487f-ada5-5c2b76d30990","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213706,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwNn0.F0MiTACHcqoGsu75pPXUINXYGX-xDYBRY1ii0-s5QUU"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"074bb7e0-442b-11ef-8685-a1e9f27e6f28","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48284","level":"info","msg":"Sent response.","req_id":451,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.037538,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"074c0600-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213706,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwNn0.F0MiTACHcqoGsu75pPXUINXYGX-xDYBRY1ii0-s5QUU"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"074c0600-442b-11ef-8685-a1e9f27e6f28","responseTime":12,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48298","level":"info","msg":"Received request.","req_id":452,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:06Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa8eb080-07a3-4c66-ab6b-8202cc1bf5b9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa8eb080-07a3-4c66-ab6b-8202cc1bf5b9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:04.615699115Z"}]},"request_id":"6470aea7-c142-4d04-b5b9-52b6e05bc6a2","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213706.867975} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8bf9349f-dd44-487f-ada5-5c2b76d30990","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a157d2fa-0e8d-426c-b926-2e4bb0d02cd5","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213706.8680916} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"074c0600-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:48298","level":"info","msg":"Sent response.","req_id":452,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.453308,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:06Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8bf9349f-dd44-487f-ada5-5c2b76d30990","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8bf9349f-dd44-487f-ada5-5c2b76d30990","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:04.573423538Z"}]},"request_id":"a8f9900c-f358-4e12-88f0-e53d2ca92900","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213706.8697886} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8bf9349f-dd44-487f-ada5-5c2b76d30990","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"074c5420-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8bf9349f-dd44-487f-ada5-5c2b76d30990","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 18ms","method":"POST","requestID":"074c5420-442b-11ef-8685-a1e9f27e6f28","responseTime":18,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"074bb7e0-442b-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"074c0600-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9? 200 31ms","method":"GET","requestID":"074c0600-442b-11ef-8685-a1e9f27e6f28","responseTime":31,"status":200,"url":"/devices/aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9?"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fe09a00d6-0e33-4b7d-8ca7-d170693c78a7#owner@http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fe09a00d6-0e33-4b7d-8ca7-d170693c78a7","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"bddff50b-948c-4f34-8409-438509be71f6","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213706.880305} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"da1c8cb5-b87e-481e-a997-0779de02c13d","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213706.8807364} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"074c5420-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/8bf9349f-dd44-487f-ada5-5c2b76d30990/signaling 200 32ms","method":"POST","requestID":"074c5420-442b-11ef-8685-a1e9f27e6f28","responseTime":32,"status":200,"url":"/devices/8bf9349f-dd44-487f-ada5-5c2b76d30990/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"074bb7e0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"af48a567ba99fa8f37d799cbaf4f9091","responseTime":23,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"GET /devices/8bf9349f-dd44-487f-ada5-5c2b76d30990? 200 38ms","method":"GET","requestID":"074bb7e0-442b-11ef-8685-a1e9f27e6f28","responseTime":38,"status":200,"url":"/devices/8bf9349f-dd44-487f-ada5-5c2b76d30990?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0751d260-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":453,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:06Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0752e3d0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa8eb080-07a3-4c66-ab6b-8202cc1bf5b9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"65ce6f42-7b32-42c4-8cb1-9b5c766e90df","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213706.8942735} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":453,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.482523,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0751d260-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"0751d260-442b-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/e09a00d6-0e33-4b7d-8ca7-d170693c78a7","user":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"af48a567ba99fa8f37d799cbaf4f9091"} authorization-1 | {"client_addr":"127.0.0.1:48284","level":"info","msg":"Received request.","req_id":454,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:06Z"} experiment-1 | {"level":"info","message":"POST /experiments? 201 159ms","method":"POST","requestID":"af48a567ba99fa8f37d799cbaf4f9091","responseTime":159,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"17/Jul/2024:10:55:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1291","request_time":"0.166","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"af48a567ba99fa8f37d799cbaf4f9091"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0751d260-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8bf9349f-dd44-487f-ada5-5c2b76d30990","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b815992f-d65c-4d33-8888-1dd2bc87907f","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213706.9013696} device-1 | {"level":"info","message":"POST /devices/aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9/signaling 200 16ms","method":"POST","requestID":"0751d260-442b-11ef-8685-a1e9f27e6f28","responseTime":16,"status":200,"url":"/devices/aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9/signaling"} authorization-1 | {"client_addr":"127.0.0.1:48284","level":"info","msg":"Sent response.","req_id":454,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.894638,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8bf9349f-dd44-487f-ada5-5c2b76d30990","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0752e3d0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8bf9349f-dd44-487f-ada5-5c2b76d30990","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0752e3d0-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwNn0.F0MiTACHcqoGsu75pPXUINXYGX-xDYBRY1ii0-s5QUU","level":"info","message":"auth send jwt","requestID":"5589e0afdfc395f58a464db0063a7e0e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5589e0afdfc395f58a464db0063a7e0e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0752e3d0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/8bf9349f-dd44-487f-ada5-5c2b76d30990/signaling 200 14ms","method":"POST","requestID":"0752e3d0-442b-11ef-8685-a1e9f27e6f28","responseTime":14,"status":200,"url":"/devices/8bf9349f-dd44-487f-ada5-5c2b76d30990/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5589e0afdfc395f58a464db0063a7e0e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"075554d0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":455,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:06Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":455,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.203878,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8bf9349f-dd44-487f-ada5-5c2b76d30990","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"5589e0afdfc395f58a464db0063a7e0e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/8bf9349f-dd44-487f-ada5-5c2b76d30990","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213706,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwNn0.F0MiTACHcqoGsu75pPXUINXYGX-xDYBRY1ii0-s5QUU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"5589e0afdfc395f58a464db0063a7e0e","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48284","level":"info","msg":"Received request.","req_id":456,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:06Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8bf9349f-dd44-487f-ada5-5c2b76d30990","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8bf9349f-dd44-487f-ada5-5c2b76d30990","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:04.573423538Z"}]},"request_id":"872cb268-0558-4681-ad0c-171062809bdd","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213706.915863} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa8eb080-07a3-4c66-ab6b-8202cc1bf5b9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ee0a6314-451a-4466-b73d-f8e9d17a2e7e","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213706.915995} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5589e0afdfc395f58a464db0063a7e0e","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:48284","level":"info","msg":"Sent response.","req_id":456,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.68032,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"075554d0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"075554d0-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5589e0afdfc395f58a464db0063a7e0e"} gateway-1 | {"time_local":"17/Jul/2024:10:55:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8bf9349f-dd44-487f-ada5-5c2b76d30990? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5589e0afdfc395f58a464db0063a7e0e"} device-1 | {"level":"info","message":"GET /devices/8bf9349f-dd44-487f-ada5-5c2b76d30990? 200 16ms","method":"GET","requestID":"5589e0afdfc395f58a464db0063a7e0e","responseTime":16,"status":200,"url":"/devices/8bf9349f-dd44-487f-ada5-5c2b76d30990?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"075554d0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9/signaling 200 15ms","method":"POST","requestID":"075554d0-442b-11ef-8685-a1e9f27e6f28","responseTime":15,"status":200,"url":"/devices/aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e09a00d6-0e33-4b7d-8ca7-d170693c78a7"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"af48a567ba99fa8f37d799cbaf4f9091"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e09a00d6-0e33-4b7d-8ca7-d170693c78a7"},"level":"info","message":"Building connection plan","requestID":"af48a567ba99fa8f37d799cbaf4f9091"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"a1683e5a-90b3-45ed-bc46-15a9c9fbd2a6"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"9afd3cbb-8e59-454e-8e2a-46b9b580f82d"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"d9dff549-ab9c-44f8-adaf-b467188e4b23"}]},"level":"info","message":"Built pairwise service configurations","requestID":"af48a567ba99fa8f37d799cbaf4f9091"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/8bf9349f-dd44-487f-ada5-5c2b76d30990"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"af48a567ba99fa8f37d799cbaf4f9091"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"07583b00-442b-11ef-8685-a1e9f27e6f28"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwNn0.F0MiTACHcqoGsu75pPXUINXYGX-xDYBRY1ii0-s5QUU","level":"info","message":"auth send jwt","requestID":"55d38eaec4442c9f12c1f373ce3260c2"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"55d38eaec4442c9f12c1f373ce3260c2","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"55d38eaec4442c9f12c1f373ce3260c2"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":457,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:06Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":457,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.666741,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:06Z"} authorization-1 | {"client_addr":"127.0.0.1:48284","level":"info","msg":"Received request.","req_id":458,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:06Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"07583b00-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213706,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwNn0.F0MiTACHcqoGsu75pPXUINXYGX-xDYBRY1ii0-s5QUU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"07583b00-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:48284","level":"info","msg":"Sent response.","req_id":458,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.852243,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"55d38eaec4442c9f12c1f373ce3260c2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213706,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwNn0.F0MiTACHcqoGsu75pPXUINXYGX-xDYBRY1ii0-s5QUU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"55d38eaec4442c9f12c1f373ce3260c2","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa8eb080-07a3-4c66-ab6b-8202cc1bf5b9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa8eb080-07a3-4c66-ab6b-8202cc1bf5b9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:04.615699115Z"}]},"request_id":"8bf69506-84ef-4924-80fb-ab14b89406a8","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213706.9399343} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"55d38eaec4442c9f12c1f373ce3260c2","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"55d38eaec4442c9f12c1f373ce3260c2"} gateway-1 | {"time_local":"17/Jul/2024:10:55:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"55d38eaec4442c9f12c1f373ce3260c2"} device-1 | {"level":"info","message":"GET /devices/aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9? 200 16ms","method":"GET","requestID":"55d38eaec4442c9f12c1f373ce3260c2","responseTime":16,"status":200,"url":"/devices/aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9?"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"6115b99a-5525-4611-8bf5-aa69832dd99c","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213706.9470592} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2a9a42c8-7343-44b4-81f7-f3aa11a6e47b","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213706.9473748} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"07583b00-442b-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"07583b00-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"07583b00-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/b67886b2-ad78-4f32-90ac-cc6322742275'","requestID":"07583b00-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/b67886b2-ad78-4f32-90ac-cc6322742275'","requestID":"07583b00-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"07583b00-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 32ms","method":"POST","requestID":"07583b00-442b-11ef-8685-a1e9f27e6f28","responseTime":32,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"07583b00-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/b67886b2-ad78-4f32-90ac-cc6322742275","device":"aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":true} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e09a00d6-0e33-4b7d-8ca7-d170693c78a7"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"af48a567ba99fa8f37d799cbaf4f9091"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"076189d0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":459,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:06Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8bf9349f-dd44-487f-ada5-5c2b76d30990","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"dc3495e3-9621-4c19-b0ed-ba71cdab2ca0","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213706.9952643} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":459,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.041645,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8bf9349f-dd44-487f-ada5-5c2b76d30990","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"076189d0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8bf9349f-dd44-487f-ada5-5c2b76d30990","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"076189d0-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"076189d0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/8bf9349f-dd44-487f-ada5-5c2b76d30990/signaling 200 11ms","method":"POST","requestID":"076189d0-442b-11ef-8685-a1e9f27e6f28","responseTime":11,"status":200,"url":"/devices/8bf9349f-dd44-487f-ada5-5c2b76d30990/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"076385a0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":460,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:07Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa8eb080-07a3-4c66-ab6b-8202cc1bf5b9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"11c67157-3315-42de-ac1b-501e99cbf053","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213707.007524} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":460,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.608654,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:07Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"076385a0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"076385a0-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"076385a0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9/signaling 200 10ms","method":"POST","requestID":"076385a0-442b-11ef-8685-a1e9f27e6f28","responseTime":10,"status":200,"url":"/devices/aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9/signaling"} device-1 | {"device":"aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 388330051550285481 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:NnK9\r\na=ice-pwd:0Nd45o7+57uoMN+Ks+R5a9yQ\r\na=ice-options:trickle\r\na=fingerprint:sha-256 70:7A:12:A8:35:3C:03:CF:8F:BE:71:14:94:18:C5:74:C5:0E:2C:B0:A6:CD:42:CC:31:92:98:AD:E7:0F:C4:C9\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"device":"aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"8bf9349f-dd44-487f-ada5-5c2b76d30990","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"b67886b2-ad78-4f32-90ac-cc6322742275","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"8bf9349f-dd44-487f-ada5-5c2b76d30990","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"8bf9349f-dd44-487f-ada5-5c2b76d30990","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"8bf9349f-dd44-487f-ada5-5c2b76d30990","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"8bf9349f-dd44-487f-ada5-5c2b76d30990","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/b67886b2-ad78-4f32-90ac-cc6322742275' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b67886b2-ad78-4f32-90ac-cc6322742275","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7c72a900a9485130b9bc7f239474b3cd","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"7c72a900a9485130b9bc7f239474b3cd","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/8bf9349f-dd44-487f-ada5-5c2b76d30990"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/b67886b2-ad78-4f32-90ac-cc6322742275"}}},"level":"info","message":"received a callback","requestID":"7c72a900a9485130b9bc7f239474b3cd"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 8ms","method":"POST","requestID":"7c72a900a9485130b9bc7f239474b3cd","responseTime":8,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:55:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.011","http_referrer":"","http_user_agent":"node-fetch","requestID":"7c72a900a9485130b9bc7f239474b3cd"} device-1 | {"content":{"candidate":"candidate:230075983 1 udp 2113937151 33e5b4b9-b64c-486b-8b9e-a8c002cee63e.local 47966 typ host generation 0 ufrag NnK9 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2661093212 1 udp 1677729535 141.24.211.56 47966 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag NnK9 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:548517038 1 udp 33562623 141.24.210.113 63624 typ relay raddr 141.24.211.56 rport 47966 generation 0 ufrag NnK9 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9'"} device-1 | {"device":"aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"data":{"peerconnection":"b67886b2-ad78-4f32-90ac-cc6322742275","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"8bf9349f-dd44-487f-ada5-5c2b76d30990","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"8bf9349f-dd44-487f-ada5-5c2b76d30990","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"b67886b2-ad78-4f32-90ac-cc6322742275","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/b67886b2-ad78-4f32-90ac-cc6322742275' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b67886b2-ad78-4f32-90ac-cc6322742275","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a5d55ba951fab096fe034b3c65d12a77","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"a5d55ba951fab096fe034b3c65d12a77","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/8bf9349f-dd44-487f-ada5-5c2b76d30990"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/b67886b2-ad78-4f32-90ac-cc6322742275"}}},"level":"info","message":"received a callback","requestID":"a5d55ba951fab096fe034b3c65d12a77"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"08a55470-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":461,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:09Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb67886b2-ad78-4f32-90ac-cc6322742275","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"20d52e14-d841-4a32-8ffb-5f7a1ac71dd3","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213709.1174257} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":461,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.305348,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/b67886b2-ad78-4f32-90ac-cc6322742275","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"08a55470-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/b67886b2-ad78-4f32-90ac-cc6322742275","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"08a55470-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"08a55470-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /peerconnections/b67886b2-ad78-4f32-90ac-cc6322742275 200 11ms","method":"GET","requestID":"08a55470-442b-11ef-8685-a1e9f27e6f28","responseTime":11,"status":200,"url":"/peerconnections/b67886b2-ad78-4f32-90ac-cc6322742275"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 44ms","method":"POST","requestID":"a5d55ba951fab096fe034b3c65d12a77","responseTime":44,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:55:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch","requestID":"a5d55ba951fab096fe034b3c65d12a77"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"08aaf9c0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":462,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:09Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8bf9349f-dd44-487f-ada5-5c2b76d30990","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"04f16f0f-04b1-4f94-9a74-057eb47c8e30","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213709.1548703} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":462,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.024595,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8bf9349f-dd44-487f-ada5-5c2b76d30990","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"08aaf9c0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8bf9349f-dd44-487f-ada5-5c2b76d30990","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"08aaf9c0-442b-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"08aaf9c0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/8bf9349f-dd44-487f-ada5-5c2b76d30990/signaling 200 13ms","method":"POST","requestID":"08aaf9c0-442b-11ef-8685-a1e9f27e6f28","responseTime":13,"status":200,"url":"/devices/8bf9349f-dd44-487f-ada5-5c2b76d30990/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"08ad6ac0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":463,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:09Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa8eb080-07a3-4c66-ab6b-8202cc1bf5b9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5a7f592b-24c1-49dc-9292-5d309dd1fa42","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213709.1696796} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":463,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.471873,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"08ad6ac0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"08ad6ac0-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"08ad6ac0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9/signaling 200 11ms","method":"POST","requestID":"08ad6ac0-442b-11ef-8685-a1e9f27e6f28","responseTime":11,"status":200,"url":"/devices/aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwOX0.I8su6rxzVEtERIq8OSr5kwBTX0EpJhXxqwg9er_C7IQ","level":"info","message":"auth send jwt","requestID":"30e5d1bb48799002a3e594f6ea715606"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"30e5d1bb48799002a3e594f6ea715606","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/e09a00d6-0e33-4b7d-8ca7-d170693c78a7","requestID":"30e5d1bb48799002a3e594f6ea715606"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":464,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:09Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":464,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.254804,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/e09a00d6-0e33-4b7d-8ca7-d170693c78a7","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"30e5d1bb48799002a3e594f6ea715606","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:http://localhost/experiments/e09a00d6-0e33-4b7d-8ca7-d170693c78a7","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213709,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwOX0.I8su6rxzVEtERIq8OSr5kwBTX0EpJhXxqwg9er_C7IQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"30e5d1bb48799002a3e594f6ea715606","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/e09a00d6-0e33-4b7d-8ca7-d170693c78a7","requestID":"30e5d1bb48799002a3e594f6ea715606"} experiment-1 | {"level":"info","message":"GET /experiments/e09a00d6-0e33-4b7d-8ca7-d170693c78a7 200 14ms","method":"GET","requestID":"30e5d1bb48799002a3e594f6ea715606","responseTime":14,"status":200,"url":"/experiments/e09a00d6-0e33-4b7d-8ca7-d170693c78a7"} gateway-1 | {"time_local":"17/Jul/2024:10:55:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/e09a00d6-0e33-4b7d-8ca7-d170693c78a7 HTTP/1.1","status": "200","body_bytes_sent":"1364","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"30e5d1bb48799002a3e594f6ea715606"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwOX0.I8su6rxzVEtERIq8OSr5kwBTX0EpJhXxqwg9er_C7IQ","level":"info","message":"auth send jwt","requestID":"5d5e4c8e323b39a47ccd2dfa54ad1a75"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"5d5e4c8e323b39a47ccd2dfa54ad1a75","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/e09a00d6-0e33-4b7d-8ca7-d170693c78a7","requestID":"5d5e4c8e323b39a47ccd2dfa54ad1a75"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":465,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:09Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":465,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.26311,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:09Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/e09a00d6-0e33-4b7d-8ca7-d170693c78a7","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"5d5e4c8e323b39a47ccd2dfa54ad1a75","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:http://localhost/experiments/e09a00d6-0e33-4b7d-8ca7-d170693c78a7","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213709,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwOX0.I8su6rxzVEtERIq8OSr5kwBTX0EpJhXxqwg9er_C7IQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5d5e4c8e323b39a47ccd2dfa54ad1a75","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e09a00d6-0e33-4b7d-8ca7-d170693c78a7"},"level":"info","message":"Attempting to finish experiment","requestID":"5d5e4c8e323b39a47ccd2dfa54ad1a75"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"08b88e50-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":466,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:09Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":466,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.211317,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:09Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/b67886b2-ad78-4f32-90ac-cc6322742275","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"08b88e50-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"peerconnection:http://localhost/peerconnections/b67886b2-ad78-4f32-90ac-cc6322742275","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213709,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwOX0.I8su6rxzVEtERIq8OSr5kwBTX0EpJhXxqwg9er_C7IQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"08b88e50-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/b67886b2-ad78-4f32-90ac-cc6322742275","device":"aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"8bf9349f-dd44-487f-ada5-5c2b76d30990","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"8bf9349f-dd44-487f-ada5-5c2b76d30990","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"8bf9349f-dd44-487f-ada5-5c2b76d30990","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/b67886b2-ad78-4f32-90ac-cc6322742275' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/b67886b2-ad78-4f32-90ac-cc6322742275' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b67886b2-ad78-4f32-90ac-cc6322742275","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb67886b2-ad78-4f32-90ac-cc6322742275': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb67886b2-ad78-4f32-90ac-cc6322742275","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]},"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":null},"raw_response":{},"request_id":"2a5d3d89-b346-442d-87c6-d59f5376525f","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213709.2644231} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b91f301e43c799b16c0ffc2b8e9588cc","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"b91f301e43c799b16c0ffc2b8e9588cc","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ca445069-c7d9-43c7-8fb9-ea14ef162670","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213709.264943} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"db68d5567cfdc77545de7417326033e5","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/8bf9349f-dd44-487f-ada5-5c2b76d30990"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/b67886b2-ad78-4f32-90ac-cc6322742275"}}},"level":"info","message":"received a callback","requestID":"b91f301e43c799b16c0ffc2b8e9588cc"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"db68d5567cfdc77545de7417326033e5","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"08b88e50-442b-11ef-8685-a1e9f27e6f28","responseTime":13,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/8bf9349f-dd44-487f-ada5-5c2b76d30990"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/b67886b2-ad78-4f32-90ac-cc6322742275"}}},"level":"info","message":"received a callback","requestID":"db68d5567cfdc77545de7417326033e5"} device-1 | {"data":{"peerconnection":"b67886b2-ad78-4f32-90ac-cc6322742275","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"08b88e50-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"DELETE /peerconnections/b67886b2-ad78-4f32-90ac-cc6322742275 204 50ms","method":"DELETE","requestID":"08b88e50-442b-11ef-8685-a1e9f27e6f28","responseTime":50,"status":204,"url":"/peerconnections/b67886b2-ad78-4f32-90ac-cc6322742275"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e09a00d6-0e33-4b7d-8ca7-d170693c78a7"},"level":"info","message":"Successfully finished experiment","requestID":"5d5e4c8e323b39a47ccd2dfa54ad1a75"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"08c40000-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":467,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:09Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8bf9349f-dd44-487f-ada5-5c2b76d30990","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b25ba149-789c-4f0f-87c9-6626ba3c5fd4","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213709.3193057} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":467,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.654866,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8bf9349f-dd44-487f-ada5-5c2b76d30990","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"08c40000-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8bf9349f-dd44-487f-ada5-5c2b76d30990","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"08c40000-442b-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"08c40000-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/8bf9349f-dd44-487f-ada5-5c2b76d30990/signaling 200 14ms","method":"POST","requestID":"08c40000-442b-11ef-8685-a1e9f27e6f28","responseTime":14,"status":200,"url":"/devices/8bf9349f-dd44-487f-ada5-5c2b76d30990/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"08c69810-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fe09a00d6-0e33-4b7d-8ca7-d170693c78a7': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fe09a00d6-0e33-4b7d-8ca7-d170693c78a7","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]},"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":null},"raw_response":{},"request_id":"87b079b7-fb6d-400d-967b-55e1851629ce","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213709.3330822} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a8349329-2b49-426d-a6af-1eaeb5cb9f94","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213709.3334038} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":468,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:09Z"} authorization-1 | {"level":"info","message":"POST /relations/update 200 26ms","method":"POST","requestID":"5d5e4c8e323b39a47ccd2dfa54ad1a75","responseTime":26,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa8eb080-07a3-4c66-ab6b-8202cc1bf5b9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6afd5eb0-6a01-483d-beb6-e564e66d62fb","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213709.3373632} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":468,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.159922,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"08c69810-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"08c69810-442b-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"08c69810-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9/signaling 200 14ms","method":"POST","requestID":"08c69810-442b-11ef-8685-a1e9f27e6f28","responseTime":14,"status":200,"url":"/devices/aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/e09a00d6-0e33-4b7d-8ca7-d170693c78a7","requestID":"5d5e4c8e323b39a47ccd2dfa54ad1a75"} gateway-1 | {"time_local":"17/Jul/2024:10:55:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/e09a00d6-0e33-4b7d-8ca7-d170693c78a7 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.187","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5d5e4c8e323b39a47ccd2dfa54ad1a75"} experiment-1 | {"level":"info","message":"DELETE /experiments/e09a00d6-0e33-4b7d-8ca7-d170693c78a7 204 182ms","method":"DELETE","requestID":"5d5e4c8e323b39a47ccd2dfa54ad1a75","responseTime":182,"status":204,"url":"/experiments/e09a00d6-0e33-4b7d-8ca7-d170693c78a7"} gateway-1 | {"time_local":"17/Jul/2024:10:55:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3229","request_time":"4.229","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"809a3010f40c943d26d3127d4af7d98c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 142ms","method":"POST","requestID":"b91f301e43c799b16c0ffc2b8e9588cc","responseTime":142,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:55:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.147","http_referrer":"","http_user_agent":"node-fetch","requestID":"b91f301e43c799b16c0ffc2b8e9588cc"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 140ms","method":"POST","requestID":"db68d5567cfdc77545de7417326033e5","responseTime":140,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:55:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.146","http_referrer":"","http_user_agent":"node-fetch","requestID":"db68d5567cfdc77545de7417326033e5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwOX0.I8su6rxzVEtERIq8OSr5kwBTX0EpJhXxqwg9er_C7IQ","level":"info","message":"auth send jwt","requestID":"3857be1c44a4e34473d452cc16f5cf4a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3857be1c44a4e34473d452cc16f5cf4a","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"3857be1c44a4e34473d452cc16f5cf4a"} gateway-1 | {"time_local":"17/Jul/2024:10:55:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2740","request_time":"2.758","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"2cf2a9574d73ca7c607021b92546164a"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":469,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:09Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":469,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.186458,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:09Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"3857be1c44a4e34473d452cc16f5cf4a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213709,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwOX0.I8su6rxzVEtERIq8OSr5kwBTX0EpJhXxqwg9er_C7IQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3857be1c44a4e34473d452cc16f5cf4a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/8bf9349f-dd44-487f-ada5-5c2b76d30990' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/aa8eb080-07a3-4c66-ab6b-8202cc1bf5b9' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa38639a0-522d-4815-9f50-57b055c3d22a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"0b61c121-4be4-4c11-a874-e066a55f4b95","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213709.4343257} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3857be1c44a4e34473d452cc16f5cf4a","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"92c2f9dc-9992-4e3a-8752-65a61f74e9c0","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213709.4393659} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"3857be1c44a4e34473d452cc16f5cf4a","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa38639a0-522d-4815-9f50-57b055c3d22a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"4051acdb-ca52-42fe-86d1-f6a7b0e7c274","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213709.4485946} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"48c8cfe6-13c4-486d-a31a-df715397b3d1","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213709.4486923} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"3857be1c44a4e34473d452cc16f5cf4a","responseTime":12,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa38639a0-522d-4815-9f50-57b055c3d22a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa38639a0-522d-4815-9f50-57b055c3d22a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:09.448567156Z"}]},"request_id":"2a0e2d68-d00b-4b76-975a-646d23571f41","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213709.4534009} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3857be1c44a4e34473d452cc16f5cf4a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"3857be1c44a4e34473d452cc16f5cf4a"} gateway-1 | {"time_local":"17/Jul/2024:10:55:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3857be1c44a4e34473d452cc16f5cf4a"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"3857be1c44a4e34473d452cc16f5cf4a","responseTime":42,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwOX0.I8su6rxzVEtERIq8OSr5kwBTX0EpJhXxqwg9er_C7IQ","level":"info","message":"auth send jwt","requestID":"a466b5098c726419ae698bb1ffe66aef"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a466b5098c726419ae698bb1ffe66aef","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"a466b5098c726419ae698bb1ffe66aef"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":470,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:09Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":470,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.76314,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:09Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"a466b5098c726419ae698bb1ffe66aef","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213709,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwOX0.I8su6rxzVEtERIq8OSr5kwBTX0EpJhXxqwg9er_C7IQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a466b5098c726419ae698bb1ffe66aef","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5ccecf9-ee23-4db5-a71d-c00c801e18e0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"9a8f64d0-6c38-4533-ae91-91d16275caa0","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213709.4847229} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"a466b5098c726419ae698bb1ffe66aef","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a1073485-488c-4e6e-9f84-e7abe36f945f","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213709.4892948} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"a466b5098c726419ae698bb1ffe66aef","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5ccecf9-ee23-4db5-a71d-c00c801e18e0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"24f3d5c3-cd54-4abf-83e5-bea2175537cc","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213709.498885} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"76f24cd8-c236-4ea9-b196-486f526d8857","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213709.499117} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"a466b5098c726419ae698bb1ffe66aef","responseTime":12,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5ccecf9-ee23-4db5-a71d-c00c801e18e0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5ccecf9-ee23-4db5-a71d-c00c801e18e0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:09.498857460Z"}]},"request_id":"6300ceb7-4f3e-4e05-9bc3-5104e65b0ed5","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213709.5032833} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a466b5098c726419ae698bb1ffe66aef","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"a466b5098c726419ae698bb1ffe66aef"} gateway-1 | {"time_local":"17/Jul/2024:10:55:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a466b5098c726419ae698bb1ffe66aef"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"a466b5098c726419ae698bb1ffe66aef","responseTime":44,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwOX0.I8su6rxzVEtERIq8OSr5kwBTX0EpJhXxqwg9er_C7IQ","level":"info","message":"auth send jwt","requestID":"2bdff0e821166308c4dc45056d258e2e"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"2bdff0e821166308c4dc45056d258e2e","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"2bdff0e821166308c4dc45056d258e2e"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":471,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:09Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":471,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.064385,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:09Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a38639a0-522d-4815-9f50-57b055c3d22a","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"2bdff0e821166308c4dc45056d258e2e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/a38639a0-522d-4815-9f50-57b055c3d22a","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213709,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcwOX0.I8su6rxzVEtERIq8OSr5kwBTX0EpJhXxqwg9er_C7IQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2bdff0e821166308c4dc45056d258e2e","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa38639a0-522d-4815-9f50-57b055c3d22a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa38639a0-522d-4815-9f50-57b055c3d22a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:09.448567156Z"}]},"request_id":"3a123d01-f491-4969-90b2-b77a70619194","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213709.9957547} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2bdff0e821166308c4dc45056d258e2e","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5c67d6f7-7825-41ee-a60d-df4bcd83d596","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213710.00316} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"2bdff0e821166308c4dc45056d258e2e","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa38639a0-522d-4815-9f50-57b055c3d22a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa38639a0-522d-4815-9f50-57b055c3d22a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:09.448567156Z"}]},"request_id":"87e28ba4-4391-47b6-98f4-6a63ca8565fa","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213710.0155804} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2bdff0e821166308c4dc45056d258e2e","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"2bdff0e821166308c4dc45056d258e2e"} device-1 | {"level":"info","message":"PATCH /devices/a38639a0-522d-4815-9f50-57b055c3d22a 200 37ms","method":"PATCH","requestID":"2bdff0e821166308c4dc45056d258e2e","responseTime":37,"status":200,"url":"/devices/a38639a0-522d-4815-9f50-57b055c3d22a"} gateway-1 | {"time_local":"17/Jul/2024:10:55:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/a38639a0-522d-4815-9f50-57b055c3d22a HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.044","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"2bdff0e821166308c4dc45056d258e2e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxMH0.Kpstza0SEyGgLCI52-IRwKe2I86FFb1ELqHVO_RFkQk","level":"info","message":"auth send jwt","requestID":"b67db066dd05c569c61bf52bcba2a7a3"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b67db066dd05c569c61bf52bcba2a7a3","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"b67db066dd05c569c61bf52bcba2a7a3"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":472,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:10Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":472,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.974207,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:10Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a38639a0-522d-4815-9f50-57b055c3d22a","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"b67db066dd05c569c61bf52bcba2a7a3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/a38639a0-522d-4815-9f50-57b055c3d22a","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213710,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxMH0.Kpstza0SEyGgLCI52-IRwKe2I86FFb1ELqHVO_RFkQk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b67db066dd05c569c61bf52bcba2a7a3","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"b67db066dd05c569c61bf52bcba2a7a3"} gateway-1 | {"time_local":"17/Jul/2024:10:55:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/a38639a0-522d-4815-9f50-57b055c3d22a/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.023","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"b67db066dd05c569c61bf52bcba2a7a3"} device-1 | {"level":"info","message":"POST /devices/a38639a0-522d-4815-9f50-57b055c3d22a/websocket 200 17ms","method":"POST","requestID":"b67db066dd05c569c61bf52bcba2a7a3","responseTime":17,"status":200,"url":"/devices/a38639a0-522d-4815-9f50-57b055c3d22a/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/a38639a0-522d-4815-9f50-57b055c3d22a' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6204dcc469774137fbe6e9b41149a584","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"6204dcc469774137fbe6e9b41149a584","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"17/Jul/2024:10:55:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/e5ccecf9-ee23-4db5-a71d-c00c801e18e0/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.005","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"6204dcc469774137fbe6e9b41149a584"} device-1 | {"level":"info","message":"OPTIONS /devices/e5ccecf9-ee23-4db5-a71d-c00c801e18e0/websocket 200 1ms","method":"OPTIONS","requestID":"6204dcc469774137fbe6e9b41149a584","responseTime":1,"status":200,"url":"/devices/e5ccecf9-ee23-4db5-a71d-c00c801e18e0/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxMX0.0fMpHSo-r6tMUMacYYvSFHsT-dZOtolnOlfEInDs8sM","level":"info","message":"auth send jwt","requestID":"47038b53d0dcb647ace5783ba6ca9f62"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"47038b53d0dcb647ace5783ba6ca9f62","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"47038b53d0dcb647ace5783ba6ca9f62"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":473,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:11Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":473,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.306336,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:11Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e5ccecf9-ee23-4db5-a71d-c00c801e18e0","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"47038b53d0dcb647ace5783ba6ca9f62","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/e5ccecf9-ee23-4db5-a71d-c00c801e18e0","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213711,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxMX0.0fMpHSo-r6tMUMacYYvSFHsT-dZOtolnOlfEInDs8sM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"47038b53d0dcb647ace5783ba6ca9f62","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"47038b53d0dcb647ace5783ba6ca9f62"} gateway-1 | {"time_local":"17/Jul/2024:10:55:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/e5ccecf9-ee23-4db5-a71d-c00c801e18e0/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.029","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"47038b53d0dcb647ace5783ba6ca9f62"} device-1 | {"level":"info","message":"POST /devices/e5ccecf9-ee23-4db5-a71d-c00c801e18e0/websocket 200 21ms","method":"POST","requestID":"47038b53d0dcb647ace5783ba6ca9f62","responseTime":21,"status":200,"url":"/devices/e5ccecf9-ee23-4db5-a71d-c00c801e18e0/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/e5ccecf9-ee23-4db5-a71d-c00c801e18e0' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxMX0.0fMpHSo-r6tMUMacYYvSFHsT-dZOtolnOlfEInDs8sM","level":"info","message":"auth send jwt","requestID":"96aad132620558c456dd1e949d22a086"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"96aad132620558c456dd1e949d22a086","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"96aad132620558c456dd1e949d22a086"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":474,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:11Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":474,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.359547,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a38639a0-522d-4815-9f50-57b055c3d22a","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"96aad132620558c456dd1e949d22a086","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/a38639a0-522d-4815-9f50-57b055c3d22a","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213711,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxMX0.0fMpHSo-r6tMUMacYYvSFHsT-dZOtolnOlfEInDs8sM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"96aad132620558c456dd1e949d22a086","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa38639a0-522d-4815-9f50-57b055c3d22a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa38639a0-522d-4815-9f50-57b055c3d22a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:09.448567156Z"}]},"request_id":"be150645-5241-4dc5-8a59-2f4368d221d5","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213711.5292609} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"96aad132620558c456dd1e949d22a086","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"96aad132620558c456dd1e949d22a086"} device-1 | {"level":"info","message":"GET /devices/a38639a0-522d-4815-9f50-57b055c3d22a? 200 22ms","method":"GET","requestID":"96aad132620558c456dd1e949d22a086","responseTime":22,"status":200,"url":"/devices/a38639a0-522d-4815-9f50-57b055c3d22a?"} gateway-1 | {"time_local":"17/Jul/2024:10:55:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a38639a0-522d-4815-9f50-57b055c3d22a? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"96aad132620558c456dd1e949d22a086"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxMX0.0fMpHSo-r6tMUMacYYvSFHsT-dZOtolnOlfEInDs8sM","level":"info","message":"auth send jwt","requestID":"34446061f4266d942022d1924210da3b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"34446061f4266d942022d1924210da3b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"34446061f4266d942022d1924210da3b"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":475,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:11Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":475,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.077016,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e5ccecf9-ee23-4db5-a71d-c00c801e18e0","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"34446061f4266d942022d1924210da3b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/e5ccecf9-ee23-4db5-a71d-c00c801e18e0","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213711,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxMX0.0fMpHSo-r6tMUMacYYvSFHsT-dZOtolnOlfEInDs8sM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"34446061f4266d942022d1924210da3b","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5ccecf9-ee23-4db5-a71d-c00c801e18e0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5ccecf9-ee23-4db5-a71d-c00c801e18e0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:09.498857460Z"}]},"request_id":"29423ed3-c414-41a9-97fc-373001ab1726","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213711.5568926} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"34446061f4266d942022d1924210da3b","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"34446061f4266d942022d1924210da3b"} gateway-1 | {"time_local":"17/Jul/2024:10:55:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e5ccecf9-ee23-4db5-a71d-c00c801e18e0? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"34446061f4266d942022d1924210da3b"} device-1 | {"level":"info","message":"GET /devices/e5ccecf9-ee23-4db5-a71d-c00c801e18e0? 200 17ms","method":"GET","requestID":"34446061f4266d942022d1924210da3b","responseTime":17,"status":200,"url":"/devices/e5ccecf9-ee23-4db5-a71d-c00c801e18e0?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxMX0.0fMpHSo-r6tMUMacYYvSFHsT-dZOtolnOlfEInDs8sM","level":"info","message":"auth send jwt","requestID":"80414b1f199ec761991d580a031bab3b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"80414b1f199ec761991d580a031bab3b","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"80414b1f199ec761991d580a031bab3b"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":476,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:11Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":476,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.233015,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:11Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"80414b1f199ec761991d580a031bab3b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213711,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxMX0.0fMpHSo-r6tMUMacYYvSFHsT-dZOtolnOlfEInDs8sM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"80414b1f199ec761991d580a031bab3b","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/83bb67e1-5dba-473d-8fd9-988d951c367d"},"level":"info","message":"Attempting to run experiment","requestID":"80414b1f199ec761991d580a031bab3b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/83bb67e1-5dba-473d-8fd9-988d951c367d"},"level":"info","message":"Attempting to book experiment","requestID":"80414b1f199ec761991d580a031bab3b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/83bb67e1-5dba-473d-8fd9-988d951c367d"},"level":"info","message":"Successfully booked experiment","requestID":"80414b1f199ec761991d580a031bab3b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0a239000-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0a23b710-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":477,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:11Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":477,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.205892,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a38639a0-522d-4815-9f50-57b055c3d22a","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0a239000-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/a38639a0-522d-4815-9f50-57b055c3d22a","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213711,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxMX0.0fMpHSo-r6tMUMacYYvSFHsT-dZOtolnOlfEInDs8sM"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0a239000-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:42078","level":"info","msg":"Received request.","req_id":478,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:11Z"} authorization-1 | {"client_addr":"127.0.0.1:42078","level":"info","msg":"Sent response.","req_id":478,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.777631,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e5ccecf9-ee23-4db5-a71d-c00c801e18e0","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0a23b710-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/e5ccecf9-ee23-4db5-a71d-c00c801e18e0","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213711,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxMX0.0fMpHSo-r6tMUMacYYvSFHsT-dZOtolnOlfEInDs8sM"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"0a23b710-442b-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa38639a0-522d-4815-9f50-57b055c3d22a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa38639a0-522d-4815-9f50-57b055c3d22a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:09.448567156Z"}]},"request_id":"c9c495dd-5777-49e9-b22a-4b3126402aaf","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213711.6270788} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"0a239000-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5ccecf9-ee23-4db5-a71d-c00c801e18e0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5ccecf9-ee23-4db5-a71d-c00c801e18e0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:09.498857460Z"}]},"request_id":"21e79862-831b-4086-b78f-a61f24c9568e","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213711.63118} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0a239000-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/a38639a0-522d-4815-9f50-57b055c3d22a? 200 16ms","method":"GET","requestID":"0a239000-442b-11ef-8685-a1e9f27e6f28","responseTime":16,"status":200,"url":"/devices/a38639a0-522d-4815-9f50-57b055c3d22a?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0a23b710-442b-11ef-8685-a1e9f27e6f28","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0a23b710-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/e5ccecf9-ee23-4db5-a71d-c00c801e18e0? 200 19ms","method":"GET","requestID":"0a23b710-442b-11ef-8685-a1e9f27e6f28","responseTime":19,"status":200,"url":"/devices/e5ccecf9-ee23-4db5-a71d-c00c801e18e0?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/83bb67e1-5dba-473d-8fd9-988d951c367d"},"level":"info","message":"Setting up experiment","requestID":"80414b1f199ec761991d580a031bab3b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/83bb67e1-5dba-473d-8fd9-988d951c367d"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"80414b1f199ec761991d580a031bab3b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/83bb67e1-5dba-473d-8fd9-988d951c367d"},"level":"info","message":"Successfully locked booking for experiment","requestID":"80414b1f199ec761991d580a031bab3b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/83bb67e1-5dba-473d-8fd9-988d951c367d"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"80414b1f199ec761991d580a031bab3b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/83bb67e1-5dba-473d-8fd9-988d951c367d"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"80414b1f199ec761991d580a031bab3b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/83bb67e1-5dba-473d-8fd9-988d951c367d"},"level":"info","message":"Attempting to update booking for experiment","requestID":"80414b1f199ec761991d580a031bab3b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/83bb67e1-5dba-473d-8fd9-988d951c367d"},"level":"info","message":"Successfully updated booking for experiment","requestID":"80414b1f199ec761991d580a031bab3b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/83bb67e1-5dba-473d-8fd9-988d951c367d"},"level":"info","message":"Successfully set up experiment","requestID":"80414b1f199ec761991d580a031bab3b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0a2dc930-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0a2e1750-442b-11ef-8685-a1e9f27e6f28"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/83bb67e1-5dba-473d-8fd9-988d951c367d"},"level":"info","message":"Successfully running experiment","requestID":"80414b1f199ec761991d580a031bab3b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0a2e8c80-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":479,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:11Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":479,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.984062,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:11Z"} authorization-1 | {"client_addr":"127.0.0.1:42078","level":"info","msg":"Received request.","req_id":480,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a38639a0-522d-4815-9f50-57b055c3d22a","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0a2dc930-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/a38639a0-522d-4815-9f50-57b055c3d22a","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213711,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxMX0.0fMpHSo-r6tMUMacYYvSFHsT-dZOtolnOlfEInDs8sM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0a2dc930-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:42078","level":"info","msg":"Sent response.","req_id":480,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.906035,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e5ccecf9-ee23-4db5-a71d-c00c801e18e0","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0a2e1750-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/e5ccecf9-ee23-4db5-a71d-c00c801e18e0","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213711,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxMX0.0fMpHSo-r6tMUMacYYvSFHsT-dZOtolnOlfEInDs8sM"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"0a2e1750-442b-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":481,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:11Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa38639a0-522d-4815-9f50-57b055c3d22a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a307f67a-edf6-4cab-8acb-777f14d704a3","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213711.695339} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":481,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.454864,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a38639a0-522d-4815-9f50-57b055c3d22a","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0a2e8c80-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a38639a0-522d-4815-9f50-57b055c3d22a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"0a2e8c80-442b-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa38639a0-522d-4815-9f50-57b055c3d22a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa38639a0-522d-4815-9f50-57b055c3d22a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:09.448567156Z"}]},"request_id":"3ef32660-a180-4b8b-8bde-9d15d1288264","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213711.6975608} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5ccecf9-ee23-4db5-a71d-c00c801e18e0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5ccecf9-ee23-4db5-a71d-c00c801e18e0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:09.498857460Z"}]},"request_id":"0da5ef4f-b80e-4353-873c-1f33f81d7561","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213711.6989014} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"0a2dc930-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"0a2e1750-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0a2e8c80-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/a38639a0-522d-4815-9f50-57b055c3d22a/signaling 200 18ms","method":"POST","requestID":"0a2e8c80-442b-11ef-8685-a1e9f27e6f28","responseTime":18,"status":200,"url":"/devices/a38639a0-522d-4815-9f50-57b055c3d22a/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0a2dc930-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/a38639a0-522d-4815-9f50-57b055c3d22a? 200 24ms","method":"GET","requestID":"0a2dc930-442b-11ef-8685-a1e9f27e6f28","responseTime":24,"status":200,"url":"/devices/a38639a0-522d-4815-9f50-57b055c3d22a?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0a2e1750-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/e5ccecf9-ee23-4db5-a71d-c00c801e18e0? 200 23ms","method":"GET","requestID":"0a2e1750-442b-11ef-8685-a1e9f27e6f28","responseTime":23,"status":200,"url":"/devices/e5ccecf9-ee23-4db5-a71d-c00c801e18e0?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0a31c0d0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0a320ef0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F83bb67e1-5dba-473d-8fd9-988d951c367d#owner@http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F83bb67e1-5dba-473d-8fd9-988d951c367d","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"427cae1b-c3f7-4004-b324-ec37d62a7875","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213711.711} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"61cf6147-5efa-40bd-99fe-d8d87084fd05","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213711.7113929} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":482,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:11Z"} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"80414b1f199ec761991d580a031bab3b","responseTime":20,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":482,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.561348,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:11Z"} authorization-1 | {"client_addr":"127.0.0.1:42078","level":"info","msg":"Received request.","req_id":483,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:11Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5ccecf9-ee23-4db5-a71d-c00c801e18e0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ea09ee26-6a27-408a-930a-a91715a02864","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213711.7138705} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e5ccecf9-ee23-4db5-a71d-c00c801e18e0","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0a31c0d0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e5ccecf9-ee23-4db5-a71d-c00c801e18e0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0a31c0d0-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa38639a0-522d-4815-9f50-57b055c3d22a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"60352650-c489-4b68-b9ec-e5563389d786","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213711.7172842} authorization-1 | {"client_addr":"127.0.0.1:42078","level":"info","msg":"Sent response.","req_id":483,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.541427,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a38639a0-522d-4815-9f50-57b055c3d22a","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0a320ef0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a38639a0-522d-4815-9f50-57b055c3d22a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0a320ef0-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/83bb67e1-5dba-473d-8fd9-988d951c367d","user":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"80414b1f199ec761991d580a031bab3b"} gateway-1 | {"time_local":"17/Jul/2024:10:55:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1291","request_time":"0.155","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"80414b1f199ec761991d580a031bab3b"} experiment-1 | {"level":"info","message":"POST /experiments? 201 148ms","method":"POST","requestID":"80414b1f199ec761991d580a031bab3b","responseTime":148,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0a31c0d0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/e5ccecf9-ee23-4db5-a71d-c00c801e18e0/signaling 200 11ms","method":"POST","requestID":"0a31c0d0-442b-11ef-8685-a1e9f27e6f28","responseTime":11,"status":200,"url":"/devices/e5ccecf9-ee23-4db5-a71d-c00c801e18e0/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0a320ef0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/a38639a0-522d-4815-9f50-57b055c3d22a/signaling 200 12ms","method":"POST","requestID":"0a320ef0-442b-11ef-8685-a1e9f27e6f28","responseTime":12,"status":200,"url":"/devices/a38639a0-522d-4815-9f50-57b055c3d22a/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxMX0.0fMpHSo-r6tMUMacYYvSFHsT-dZOtolnOlfEInDs8sM","level":"info","message":"auth send jwt","requestID":"e55971ea0b87d7f2ace02bc0f30aa094"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e55971ea0b87d7f2ace02bc0f30aa094","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0a3431d0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e55971ea0b87d7f2ace02bc0f30aa094"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":484,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:11Z"} authorization-1 | {"client_addr":"127.0.0.1:42078","level":"info","msg":"Received request.","req_id":485,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:11Z"} authorization-1 | {"client_addr":"127.0.0.1:42078","level":"info","msg":"Sent response.","req_id":485,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.723638,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a38639a0-522d-4815-9f50-57b055c3d22a","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"e55971ea0b87d7f2ace02bc0f30aa094","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/a38639a0-522d-4815-9f50-57b055c3d22a","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213711,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxMX0.0fMpHSo-r6tMUMacYYvSFHsT-dZOtolnOlfEInDs8sM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e55971ea0b87d7f2ace02bc0f30aa094","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5ccecf9-ee23-4db5-a71d-c00c801e18e0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5c929513-5185-4147-bf91-91105454cd36","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213711.7302027} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":484,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.002211,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e5ccecf9-ee23-4db5-a71d-c00c801e18e0","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0a3431d0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e5ccecf9-ee23-4db5-a71d-c00c801e18e0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0a3431d0-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa38639a0-522d-4815-9f50-57b055c3d22a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa38639a0-522d-4815-9f50-57b055c3d22a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:09.448567156Z"}]},"request_id":"05d10e12-9d8e-420c-bac1-49781f4b22d1","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213711.734515} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0a3431d0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/e5ccecf9-ee23-4db5-a71d-c00c801e18e0/signaling 200 10ms","method":"POST","requestID":"0a3431d0-442b-11ef-8685-a1e9f27e6f28","responseTime":10,"status":200,"url":"/devices/e5ccecf9-ee23-4db5-a71d-c00c801e18e0/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"e55971ea0b87d7f2ace02bc0f30aa094","responseTime":2,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/83bb67e1-5dba-473d-8fd9-988d951c367d"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"80414b1f199ec761991d580a031bab3b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/83bb67e1-5dba-473d-8fd9-988d951c367d"},"level":"info","message":"Building connection plan","requestID":"80414b1f199ec761991d580a031bab3b"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"21bb211d-3653-4788-810e-ce2087be32ac"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"577e4001-553b-48ab-bd05-6407488d0770"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"c79f0dbb-7b66-49e6-8955-53db97e7e1b9"}]},"level":"info","message":"Built pairwise service configurations","requestID":"80414b1f199ec761991d580a031bab3b"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/a38639a0-522d-4815-9f50-57b055c3d22a"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/e5ccecf9-ee23-4db5-a71d-c00c801e18e0"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"80414b1f199ec761991d580a031bab3b"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e55971ea0b87d7f2ace02bc0f30aa094"} gateway-1 | {"time_local":"17/Jul/2024:10:55:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a38639a0-522d-4815-9f50-57b055c3d22a? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e55971ea0b87d7f2ace02bc0f30aa094"} device-1 | {"level":"info","message":"GET /devices/a38639a0-522d-4815-9f50-57b055c3d22a? 200 11ms","method":"GET","requestID":"e55971ea0b87d7f2ace02bc0f30aa094","responseTime":11,"status":200,"url":"/devices/a38639a0-522d-4815-9f50-57b055c3d22a?"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"0a362da0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":486,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:11Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxMX0.0fMpHSo-r6tMUMacYYvSFHsT-dZOtolnOlfEInDs8sM","level":"info","message":"auth send jwt","requestID":"9142ab958719ed0f1ffddada9c30f149"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":486,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.814335,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:11Z"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"9142ab958719ed0f1ffddada9c30f149","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0a362da0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213711,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxMX0.0fMpHSo-r6tMUMacYYvSFHsT-dZOtolnOlfEInDs8sM"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9142ab958719ed0f1ffddada9c30f149"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0a362da0-442b-11ef-8685-a1e9f27e6f28","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":487,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:11Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":487,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.719695,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e5ccecf9-ee23-4db5-a71d-c00c801e18e0","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"9142ab958719ed0f1ffddada9c30f149","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/e5ccecf9-ee23-4db5-a71d-c00c801e18e0","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213711,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxMX0.0fMpHSo-r6tMUMacYYvSFHsT-dZOtolnOlfEInDs8sM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"9142ab958719ed0f1ffddada9c30f149","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"cc12385f-540a-494b-9b91-9fec8cada724","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213711.7499466} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f929200e-4d94-4d8c-a227-e7276e47d749","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213711.7500918} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5ccecf9-ee23-4db5-a71d-c00c801e18e0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5ccecf9-ee23-4db5-a71d-c00c801e18e0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:09.498857460Z"}]},"request_id":"37659b6a-0629-48c3-9aed-6a92abd84e93","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213711.7507722} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"0a362da0-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9142ab958719ed0f1ffddada9c30f149","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9142ab958719ed0f1ffddada9c30f149"} gateway-1 | {"time_local":"17/Jul/2024:10:55:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e5ccecf9-ee23-4db5-a71d-c00c801e18e0? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9142ab958719ed0f1ffddada9c30f149"} device-1 | {"level":"info","message":"GET /devices/e5ccecf9-ee23-4db5-a71d-c00c801e18e0? 200 13ms","method":"GET","requestID":"9142ab958719ed0f1ffddada9c30f149","responseTime":13,"status":200,"url":"/devices/e5ccecf9-ee23-4db5-a71d-c00c801e18e0?"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"0a362da0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"0a362da0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/8dcdb0ab-4e4f-412f-ac86-c1fe7c8b5674'","requestID":"0a362da0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/8dcdb0ab-4e4f-412f-ac86-c1fe7c8b5674'","requestID":"0a362da0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"0a362da0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 32ms","method":"POST","requestID":"0a362da0-442b-11ef-8685-a1e9f27e6f28","responseTime":32,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"0a362da0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/8dcdb0ab-4e4f-412f-ac86-c1fe7c8b5674","device":"e5ccecf9-ee23-4db5-a71d-c00c801e18e0","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":true} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/83bb67e1-5dba-473d-8fd9-988d951c367d"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"80414b1f199ec761991d580a031bab3b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0a403fc0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":488,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:11Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa38639a0-522d-4815-9f50-57b055c3d22a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5c798dc1-5606-47c8-965f-2fc269b49e2b","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213711.8093472} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":488,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.848239,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a38639a0-522d-4815-9f50-57b055c3d22a","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0a403fc0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a38639a0-522d-4815-9f50-57b055c3d22a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0a403fc0-442b-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0a403fc0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/a38639a0-522d-4815-9f50-57b055c3d22a/signaling 200 9ms","method":"POST","requestID":"0a403fc0-442b-11ef-8685-a1e9f27e6f28","responseTime":9,"status":200,"url":"/devices/a38639a0-522d-4815-9f50-57b055c3d22a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0a41c660-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":489,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:11Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5ccecf9-ee23-4db5-a71d-c00c801e18e0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c509bbea-18dc-49fe-ba38-080fcf358ee1","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213711.818431} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":489,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.131311,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e5ccecf9-ee23-4db5-a71d-c00c801e18e0","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0a41c660-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e5ccecf9-ee23-4db5-a71d-c00c801e18e0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0a41c660-442b-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0a41c660-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/e5ccecf9-ee23-4db5-a71d-c00c801e18e0/signaling 200 8ms","method":"POST","requestID":"0a41c660-442b-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/devices/e5ccecf9-ee23-4db5-a71d-c00c801e18e0/signaling"} device-1 | {"device":"e5ccecf9-ee23-4db5-a71d-c00c801e18e0","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"e5ccecf9-ee23-4db5-a71d-c00c801e18e0","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 7147226388829206593 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:mLb/\r\na=ice-pwd:8EvwqsAtVlpgLhvY0/+MGLAi\r\na=ice-options:trickle\r\na=fingerprint:sha-256 9D:0B:78:B9:E1:6A:F2:05:DD:FA:8C:93:F3:07:20:17:55:0E:46:B0:0C:28:3E:44:C3:C6:32:B4:02:DA:6F:EF\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"e5ccecf9-ee23-4db5-a71d-c00c801e18e0","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"device":"e5ccecf9-ee23-4db5-a71d-c00c801e18e0","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"a38639a0-522d-4815-9f50-57b055c3d22a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"a38639a0-522d-4815-9f50-57b055c3d22a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"a38639a0-522d-4815-9f50-57b055c3d22a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"8dcdb0ab-4e4f-412f-ac86-c1fe7c8b5674","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"a38639a0-522d-4815-9f50-57b055c3d22a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"a38639a0-522d-4815-9f50-57b055c3d22a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/8dcdb0ab-4e4f-412f-ac86-c1fe7c8b5674' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"8dcdb0ab-4e4f-412f-ac86-c1fe7c8b5674","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4f8ef1ed1c81d543950ec2d6120f609a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"4f8ef1ed1c81d543950ec2d6120f609a","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/a38639a0-522d-4815-9f50-57b055c3d22a"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/e5ccecf9-ee23-4db5-a71d-c00c801e18e0"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/8dcdb0ab-4e4f-412f-ac86-c1fe7c8b5674"}}},"level":"info","message":"received a callback","requestID":"4f8ef1ed1c81d543950ec2d6120f609a"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"4f8ef1ed1c81d543950ec2d6120f609a","responseTime":7,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:55:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.011","http_referrer":"","http_user_agent":"node-fetch","requestID":"4f8ef1ed1c81d543950ec2d6120f609a"} device-1 | {"content":{"candidate":"candidate:1510646964 1 udp 2113937151 a8c04dcb-a62b-47e5-94ea-abcd28522fbb.local 45083 typ host generation 0 ufrag mLb/ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"e5ccecf9-ee23-4db5-a71d-c00c801e18e0","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3374384551 1 udp 1677729535 141.24.211.56 45083 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag mLb/ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"e5ccecf9-ee23-4db5-a71d-c00c801e18e0","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1997389397 1 udp 33562623 141.24.210.113 60645 typ relay raddr 141.24.211.56 rport 45083 generation 0 ufrag mLb/ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"e5ccecf9-ee23-4db5-a71d-c00c801e18e0","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/e5ccecf9-ee23-4db5-a71d-c00c801e18e0'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/e5ccecf9-ee23-4db5-a71d-c00c801e18e0'"} device-1 | {"device":"e5ccecf9-ee23-4db5-a71d-c00c801e18e0","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"data":{"peerconnection":"8dcdb0ab-4e4f-412f-ac86-c1fe7c8b5674","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"a38639a0-522d-4815-9f50-57b055c3d22a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"e5ccecf9-ee23-4db5-a71d-c00c801e18e0","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"a38639a0-522d-4815-9f50-57b055c3d22a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"8dcdb0ab-4e4f-412f-ac86-c1fe7c8b5674","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/8dcdb0ab-4e4f-412f-ac86-c1fe7c8b5674' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"8dcdb0ab-4e4f-412f-ac86-c1fe7c8b5674","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b34b228310f968a47181c573b5d4cf6f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"b34b228310f968a47181c573b5d4cf6f","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a38639a0-522d-4815-9f50-57b055c3d22a"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/e5ccecf9-ee23-4db5-a71d-c00c801e18e0"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/8dcdb0ab-4e4f-412f-ac86-c1fe7c8b5674"}}},"level":"info","message":"received a callback","requestID":"b34b228310f968a47181c573b5d4cf6f"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"0b7e16f0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":490,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:13Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F8dcdb0ab-4e4f-412f-ac86-c1fe7c8b5674","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"666eb75b-82dd-4a5b-a481-6e08b10ea27e","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213713.8934858} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":490,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.17247,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:13Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/8dcdb0ab-4e4f-412f-ac86-c1fe7c8b5674","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0b7e16f0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/8dcdb0ab-4e4f-412f-ac86-c1fe7c8b5674","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0b7e16f0-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"0b7e16f0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /peerconnections/8dcdb0ab-4e4f-412f-ac86-c1fe7c8b5674 200 11ms","method":"GET","requestID":"0b7e16f0-442b-11ef-8685-a1e9f27e6f28","responseTime":11,"status":200,"url":"/peerconnections/8dcdb0ab-4e4f-412f-ac86-c1fe7c8b5674"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 40ms","method":"POST","requestID":"b34b228310f968a47181c573b5d4cf6f","responseTime":40,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:55:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.045","http_referrer":"","http_user_agent":"node-fetch","requestID":"b34b228310f968a47181c573b5d4cf6f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0b834710-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":491,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:13Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa38639a0-522d-4815-9f50-57b055c3d22a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d9a2c030-83ce-4e96-8f6b-0c21bf9299c9","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213713.9275053} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":491,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.255171,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:13Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a38639a0-522d-4815-9f50-57b055c3d22a","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0b834710-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a38639a0-522d-4815-9f50-57b055c3d22a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0b834710-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0b834710-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/a38639a0-522d-4815-9f50-57b055c3d22a/signaling 200 12ms","method":"POST","requestID":"0b834710-442b-11ef-8685-a1e9f27e6f28","responseTime":12,"status":200,"url":"/devices/a38639a0-522d-4815-9f50-57b055c3d22a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0b8569f0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":492,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:13Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5ccecf9-ee23-4db5-a71d-c00c801e18e0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6754fed3-018e-491b-ab63-bbb07ccfb698","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213713.9415042} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":492,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.090136,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:13Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e5ccecf9-ee23-4db5-a71d-c00c801e18e0","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0b8569f0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e5ccecf9-ee23-4db5-a71d-c00c801e18e0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"0b8569f0-442b-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0b8569f0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/e5ccecf9-ee23-4db5-a71d-c00c801e18e0/signaling 200 12ms","method":"POST","requestID":"0b8569f0-442b-11ef-8685-a1e9f27e6f28","responseTime":12,"status":200,"url":"/devices/e5ccecf9-ee23-4db5-a71d-c00c801e18e0/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxM30.ZZQzjDnYj-D6n30wiipfzUOIQSbVx7IF_NvbrCaApKs","level":"info","message":"auth send jwt","requestID":"f4e43ca925c47974142c8de1e7b8cf6e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f4e43ca925c47974142c8de1e7b8cf6e","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/83bb67e1-5dba-473d-8fd9-988d951c367d","requestID":"f4e43ca925c47974142c8de1e7b8cf6e"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":493,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:13Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":493,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.242154,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:13Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/83bb67e1-5dba-473d-8fd9-988d951c367d","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f4e43ca925c47974142c8de1e7b8cf6e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:http://localhost/experiments/83bb67e1-5dba-473d-8fd9-988d951c367d","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213713,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxM30.ZZQzjDnYj-D6n30wiipfzUOIQSbVx7IF_NvbrCaApKs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f4e43ca925c47974142c8de1e7b8cf6e","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/83bb67e1-5dba-473d-8fd9-988d951c367d","requestID":"f4e43ca925c47974142c8de1e7b8cf6e"} gateway-1 | {"time_local":"17/Jul/2024:10:55:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/83bb67e1-5dba-473d-8fd9-988d951c367d HTTP/1.1","status": "200","body_bytes_sent":"1364","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f4e43ca925c47974142c8de1e7b8cf6e"} experiment-1 | {"level":"info","message":"GET /experiments/83bb67e1-5dba-473d-8fd9-988d951c367d 200 15ms","method":"GET","requestID":"f4e43ca925c47974142c8de1e7b8cf6e","responseTime":15,"status":200,"url":"/experiments/83bb67e1-5dba-473d-8fd9-988d951c367d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxM30.ZZQzjDnYj-D6n30wiipfzUOIQSbVx7IF_NvbrCaApKs","level":"info","message":"auth send jwt","requestID":"995ad39e253b3a9a80b1f73c49d40c94"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"995ad39e253b3a9a80b1f73c49d40c94","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/83bb67e1-5dba-473d-8fd9-988d951c367d","requestID":"995ad39e253b3a9a80b1f73c49d40c94"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":494,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:13Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":494,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.348643,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:14Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/83bb67e1-5dba-473d-8fd9-988d951c367d","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"995ad39e253b3a9a80b1f73c49d40c94","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:http://localhost/experiments/83bb67e1-5dba-473d-8fd9-988d951c367d","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213713,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxM30.ZZQzjDnYj-D6n30wiipfzUOIQSbVx7IF_NvbrCaApKs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"995ad39e253b3a9a80b1f73c49d40c94","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/83bb67e1-5dba-473d-8fd9-988d951c367d"},"level":"info","message":"Attempting to finish experiment","requestID":"995ad39e253b3a9a80b1f73c49d40c94"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"0b9129c0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":495,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:14Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":495,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.154738,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:14Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/8dcdb0ab-4e4f-412f-ac86-c1fe7c8b5674","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0b9129c0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"peerconnection:http://localhost/peerconnections/8dcdb0ab-4e4f-412f-ac86-c1fe7c8b5674","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213713,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxM30.ZZQzjDnYj-D6n30wiipfzUOIQSbVx7IF_NvbrCaApKs"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0b9129c0-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/8dcdb0ab-4e4f-412f-ac86-c1fe7c8b5674","device":"e5ccecf9-ee23-4db5-a71d-c00c801e18e0","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"a38639a0-522d-4815-9f50-57b055c3d22a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"a38639a0-522d-4815-9f50-57b055c3d22a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"a38639a0-522d-4815-9f50-57b055c3d22a","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/8dcdb0ab-4e4f-412f-ac86-c1fe7c8b5674' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/8dcdb0ab-4e4f-412f-ac86-c1fe7c8b5674' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"8dcdb0ab-4e4f-412f-ac86-c1fe7c8b5674","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F8dcdb0ab-4e4f-412f-ac86-c1fe7c8b5674': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F8dcdb0ab-4e4f-412f-ac86-c1fe7c8b5674","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]},"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":null},"raw_response":{},"request_id":"9877a025-c12e-4846-8230-46891d28b86b","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213714.0400038} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9f360cee-b3f6-4dc0-bf12-f457285d1024","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213714.04042} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8c378a2daee1af2fe3eef43ccdc590c1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"8c378a2daee1af2fe3eef43ccdc590c1","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"0b9129c0-442b-11ef-8685-a1e9f27e6f28","responseTime":12,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/a38639a0-522d-4815-9f50-57b055c3d22a"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/e5ccecf9-ee23-4db5-a71d-c00c801e18e0"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/8dcdb0ab-4e4f-412f-ac86-c1fe7c8b5674"}}},"level":"info","message":"received a callback","requestID":"8c378a2daee1af2fe3eef43ccdc590c1"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"41b9c2c0134235fd204145d3c11db2aa","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"41b9c2c0134235fd204145d3c11db2aa","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/a38639a0-522d-4815-9f50-57b055c3d22a"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/e5ccecf9-ee23-4db5-a71d-c00c801e18e0"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/8dcdb0ab-4e4f-412f-ac86-c1fe7c8b5674"}}},"level":"info","message":"received a callback","requestID":"41b9c2c0134235fd204145d3c11db2aa"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"0b9129c0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"DELETE /peerconnections/8dcdb0ab-4e4f-412f-ac86-c1fe7c8b5674 204 38ms","method":"DELETE","requestID":"0b9129c0-442b-11ef-8685-a1e9f27e6f28","responseTime":38,"status":204,"url":"/peerconnections/8dcdb0ab-4e4f-412f-ac86-c1fe7c8b5674"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/e5ccecf9-ee23-4db5-a71d-c00c801e18e0'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/83bb67e1-5dba-473d-8fd9-988d951c367d"},"level":"info","message":"Successfully finished experiment","requestID":"995ad39e253b3a9a80b1f73c49d40c94"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0b9aedc0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":496,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:14Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa38639a0-522d-4815-9f50-57b055c3d22a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"23d29504-753a-42b6-affc-67edddf9366a","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213714.0852308} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":496,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.288312,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a38639a0-522d-4815-9f50-57b055c3d22a","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0b9aedc0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a38639a0-522d-4815-9f50-57b055c3d22a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"0b9aedc0-442b-11ef-8685-a1e9f27e6f28","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F83bb67e1-5dba-473d-8fd9-988d951c367d': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F83bb67e1-5dba-473d-8fd9-988d951c367d","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]},"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":null},"raw_response":{},"request_id":"5f34b589-e280-49c9-a5b7-de11a831bee2","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213714.0893285} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c416aa00-0e2e-46e4-a092-4f19e8d89705","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213714.0897174} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"995ad39e253b3a9a80b1f73c49d40c94","responseTime":19,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0b9aedc0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/a38639a0-522d-4815-9f50-57b055c3d22a/signaling 200 20ms","method":"POST","requestID":"0b9aedc0-442b-11ef-8685-a1e9f27e6f28","responseTime":20,"status":200,"url":"/devices/a38639a0-522d-4815-9f50-57b055c3d22a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0b9e4920-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":497,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:14Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe5ccecf9-ee23-4db5-a71d-c00c801e18e0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ab466852-0749-4589-adea-e05c9580db12","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213714.1036184} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":497,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.445451,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e5ccecf9-ee23-4db5-a71d-c00c801e18e0","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0b9e4920-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e5ccecf9-ee23-4db5-a71d-c00c801e18e0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0b9e4920-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0b9e4920-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/e5ccecf9-ee23-4db5-a71d-c00c801e18e0/signaling 200 11ms","method":"POST","requestID":"0b9e4920-442b-11ef-8685-a1e9f27e6f28","responseTime":11,"status":200,"url":"/devices/e5ccecf9-ee23-4db5-a71d-c00c801e18e0/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/83bb67e1-5dba-473d-8fd9-988d951c367d","requestID":"995ad39e253b3a9a80b1f73c49d40c94"} gateway-1 | {"time_local":"17/Jul/2024:10:55:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/83bb67e1-5dba-473d-8fd9-988d951c367d HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.171","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"995ad39e253b3a9a80b1f73c49d40c94"} gateway-1 | {"time_local":"17/Jul/2024:10:55:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3232","request_time":"4.116","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"68b3555b82d934ad9cd3321b3ae1c156"} experiment-1 | {"level":"info","message":"DELETE /experiments/83bb67e1-5dba-473d-8fd9-988d951c367d 204 166ms","method":"DELETE","requestID":"995ad39e253b3a9a80b1f73c49d40c94","responseTime":166,"status":204,"url":"/experiments/83bb67e1-5dba-473d-8fd9-988d951c367d"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 119ms","method":"POST","requestID":"8c378a2daee1af2fe3eef43ccdc590c1","responseTime":119,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:55:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.124","http_referrer":"","http_user_agent":"node-fetch","requestID":"8c378a2daee1af2fe3eef43ccdc590c1"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 117ms","method":"POST","requestID":"41b9c2c0134235fd204145d3c11db2aa","responseTime":117,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:55:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.125","http_referrer":"","http_user_agent":"node-fetch","requestID":"41b9c2c0134235fd204145d3c11db2aa"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxNH0.nkBD_BGKQu0h1UptmnBQs-q1w-RVsdAVUDqi4oV_HsE","level":"info","message":"auth send jwt","requestID":"e076970ea17bd14d12d2e5c910379228"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e076970ea17bd14d12d2e5c910379228","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"e076970ea17bd14d12d2e5c910379228"} gateway-1 | {"time_local":"17/Jul/2024:10:55:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2740","request_time":"2.673","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"a554bde4884298b89ae024e0df3c69fb"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":498,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:14Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":498,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.84319,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:14Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"e076970ea17bd14d12d2e5c910379228","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213714,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxNH0.nkBD_BGKQu0h1UptmnBQs-q1w-RVsdAVUDqi4oV_HsE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e076970ea17bd14d12d2e5c910379228","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/a38639a0-522d-4815-9f50-57b055c3d22a' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F41e60072-42e1-4cee-b77c-dffe0eb081f9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"97cfa93e-cfb7-440d-9c76-6a4850bd521f","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213714.1909368} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e076970ea17bd14d12d2e5c910379228","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/e5ccecf9-ee23-4db5-a71d-c00c801e18e0' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5b3ea66b-5306-4cab-a644-f2ab43a2812a","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213714.1985135} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"e076970ea17bd14d12d2e5c910379228","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F41e60072-42e1-4cee-b77c-dffe0eb081f9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"4cee65f4-f36c-4572-99d3-5b6fe0a1ff46","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213714.208322} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f5ac7161-0df5-41e6-9000-b44d98207b31","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213714.2085016} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"e076970ea17bd14d12d2e5c910379228","responseTime":12,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F41e60072-42e1-4cee-b77c-dffe0eb081f9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F41e60072-42e1-4cee-b77c-dffe0eb081f9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:14.208300943Z"}]},"request_id":"8eaca495-14af-4a99-9612-041d8e206050","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213714.2129848} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"e076970ea17bd14d12d2e5c910379228","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"e076970ea17bd14d12d2e5c910379228"} gateway-1 | {"time_local":"17/Jul/2024:10:55:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.054","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e076970ea17bd14d12d2e5c910379228"} device-1 | {"level":"info","message":"POST /devices? 201 48ms","method":"POST","requestID":"e076970ea17bd14d12d2e5c910379228","responseTime":48,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxNH0.nkBD_BGKQu0h1UptmnBQs-q1w-RVsdAVUDqi4oV_HsE","level":"info","message":"auth send jwt","requestID":"95b33d3e596fea79872145c024414ddb"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"95b33d3e596fea79872145c024414ddb","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"95b33d3e596fea79872145c024414ddb"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":499,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:14Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":499,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.775621,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:14Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"95b33d3e596fea79872145c024414ddb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213714,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxNH0.nkBD_BGKQu0h1UptmnBQs-q1w-RVsdAVUDqi4oV_HsE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"95b33d3e596fea79872145c024414ddb","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29ed84a7-7d77-40f8-a3d5-57daac70ebbc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"6cf7f2dc-78c3-46f6-8203-d9a596bec56e","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213714.2420774} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"95b33d3e596fea79872145c024414ddb","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"acf19bb0-e0d1-4049-a176-bef895203bad","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213714.247491} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"95b33d3e596fea79872145c024414ddb","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29ed84a7-7d77-40f8-a3d5-57daac70ebbc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"ad56206c-d33c-4bf3-8a69-e2022137321f","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213714.25811} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"709b2c47-4347-4a09-8738-c72b56a409a9","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213714.2583256} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"95b33d3e596fea79872145c024414ddb","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29ed84a7-7d77-40f8-a3d5-57daac70ebbc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29ed84a7-7d77-40f8-a3d5-57daac70ebbc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:14.258082271Z"}]},"request_id":"79ecaee6-6002-4e98-9da1-312abe588c6f","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213714.262534} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"95b33d3e596fea79872145c024414ddb","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"95b33d3e596fea79872145c024414ddb"} gateway-1 | {"time_local":"17/Jul/2024:10:55:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"95b33d3e596fea79872145c024414ddb"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"95b33d3e596fea79872145c024414ddb","responseTime":44,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxNH0.nkBD_BGKQu0h1UptmnBQs-q1w-RVsdAVUDqi4oV_HsE","level":"info","message":"auth send jwt","requestID":"e853b224f6638f43f9aa4988c6f8667e"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"e853b224f6638f43f9aa4988c6f8667e","responseTime":5,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxNH0.nkBD_BGKQu0h1UptmnBQs-q1w-RVsdAVUDqi4oV_HsE","level":"info","message":"auth send jwt","requestID":"46fac61d68dd5fc7a30b0733ba7b7848"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"46fac61d68dd5fc7a30b0733ba7b7848","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"e853b224f6638f43f9aa4988c6f8667e"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"46fac61d68dd5fc7a30b0733ba7b7848"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":500,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:14Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":500,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.675566,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:14Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/29ed84a7-7d77-40f8-a3d5-57daac70ebbc","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"e853b224f6638f43f9aa4988c6f8667e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/29ed84a7-7d77-40f8-a3d5-57daac70ebbc","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213714,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxNH0.nkBD_BGKQu0h1UptmnBQs-q1w-RVsdAVUDqi4oV_HsE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e853b224f6638f43f9aa4988c6f8667e","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:42078","level":"info","msg":"Received request.","req_id":501,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:14Z"} authorization-1 | {"client_addr":"127.0.0.1:42078","level":"info","msg":"Sent response.","req_id":501,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.625933,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:14Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/41e60072-42e1-4cee-b77c-dffe0eb081f9","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"46fac61d68dd5fc7a30b0733ba7b7848","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/41e60072-42e1-4cee-b77c-dffe0eb081f9","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213714,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxNH0.nkBD_BGKQu0h1UptmnBQs-q1w-RVsdAVUDqi4oV_HsE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"46fac61d68dd5fc7a30b0733ba7b7848","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29ed84a7-7d77-40f8-a3d5-57daac70ebbc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29ed84a7-7d77-40f8-a3d5-57daac70ebbc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:14.258082271Z"}]},"request_id":"95b4bd0c-6674-4b6f-b5d0-b1bbda5e8e35","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213714.7491388} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e853b224f6638f43f9aa4988c6f8667e","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F41e60072-42e1-4cee-b77c-dffe0eb081f9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F41e60072-42e1-4cee-b77c-dffe0eb081f9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:14.208300943Z"}]},"request_id":"63fcdfc3-f4e1-4276-957e-b99098dd6102","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213714.749798} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"46fac61d68dd5fc7a30b0733ba7b7848","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2ea9f628-c1a4-481d-9347-ca3b7de8ca5e","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213714.7547345} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"e853b224f6638f43f9aa4988c6f8667e","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"359ef57a-7b1e-4dde-8ef8-57724b40a16e","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213714.7579532} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"46fac61d68dd5fc7a30b0733ba7b7848","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F41e60072-42e1-4cee-b77c-dffe0eb081f9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F41e60072-42e1-4cee-b77c-dffe0eb081f9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:14.208300943Z"}]},"request_id":"631fb9b1-a16c-433c-a2fd-b6456cefd43b","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213714.760919} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"46fac61d68dd5fc7a30b0733ba7b7848","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"46fac61d68dd5fc7a30b0733ba7b7848"} gateway-1 | {"time_local":"17/Jul/2024:10:55:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/41e60072-42e1-4cee-b77c-dffe0eb081f9 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.033","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"46fac61d68dd5fc7a30b0733ba7b7848"} device-1 | {"level":"info","message":"PATCH /devices/41e60072-42e1-4cee-b77c-dffe0eb081f9 200 24ms","method":"PATCH","requestID":"46fac61d68dd5fc7a30b0733ba7b7848","responseTime":24,"status":200,"url":"/devices/41e60072-42e1-4cee-b77c-dffe0eb081f9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxNH0.nkBD_BGKQu0h1UptmnBQs-q1w-RVsdAVUDqi4oV_HsE","level":"info","message":"auth send jwt","requestID":"940e6f0d86a856791fdd5cc319b5bc38"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"940e6f0d86a856791fdd5cc319b5bc38","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"940e6f0d86a856791fdd5cc319b5bc38"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29ed84a7-7d77-40f8-a3d5-57daac70ebbc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29ed84a7-7d77-40f8-a3d5-57daac70ebbc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:14.258082271Z"}]},"request_id":"207fb32d-f1da-44f8-b611-6da391359be8","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213714.7703106} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e853b224f6638f43f9aa4988c6f8667e","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":502,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:14Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":502,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.677387,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:14Z"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"e853b224f6638f43f9aa4988c6f8667e"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/41e60072-42e1-4cee-b77c-dffe0eb081f9","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"940e6f0d86a856791fdd5cc319b5bc38","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/41e60072-42e1-4cee-b77c-dffe0eb081f9","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213714,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxNH0.nkBD_BGKQu0h1UptmnBQs-q1w-RVsdAVUDqi4oV_HsE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"940e6f0d86a856791fdd5cc319b5bc38","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"17/Jul/2024:10:55:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/29ed84a7-7d77-40f8-a3d5-57daac70ebbc HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.044","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"e853b224f6638f43f9aa4988c6f8667e"} device-1 | {"level":"info","message":"PATCH /devices/29ed84a7-7d77-40f8-a3d5-57daac70ebbc 200 37ms","method":"PATCH","requestID":"e853b224f6638f43f9aa4988c6f8667e","responseTime":37,"status":200,"url":"/devices/29ed84a7-7d77-40f8-a3d5-57daac70ebbc"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxNH0.nkBD_BGKQu0h1UptmnBQs-q1w-RVsdAVUDqi4oV_HsE","level":"info","message":"auth send jwt","requestID":"ff2af537442147ade4b848ac2a83333a"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"ff2af537442147ade4b848ac2a83333a","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"ff2af537442147ade4b848ac2a83333a"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":503,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:14Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":503,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.167886,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:14Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/29ed84a7-7d77-40f8-a3d5-57daac70ebbc","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"ff2af537442147ade4b848ac2a83333a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/29ed84a7-7d77-40f8-a3d5-57daac70ebbc","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213714,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxNH0.nkBD_BGKQu0h1UptmnBQs-q1w-RVsdAVUDqi4oV_HsE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ff2af537442147ade4b848ac2a83333a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"940e6f0d86a856791fdd5cc319b5bc38"} gateway-1 | {"time_local":"17/Jul/2024:10:55:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/41e60072-42e1-4cee-b77c-dffe0eb081f9/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.022","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"940e6f0d86a856791fdd5cc319b5bc38"} device-1 | {"level":"info","message":"POST /devices/41e60072-42e1-4cee-b77c-dffe0eb081f9/websocket 200 17ms","method":"POST","requestID":"940e6f0d86a856791fdd5cc319b5bc38","responseTime":17,"status":200,"url":"/devices/41e60072-42e1-4cee-b77c-dffe0eb081f9/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"ff2af537442147ade4b848ac2a83333a"} device-1 | {"level":"info","message":"POST /devices/29ed84a7-7d77-40f8-a3d5-57daac70ebbc/websocket 200 20ms","method":"POST","requestID":"ff2af537442147ade4b848ac2a83333a","responseTime":20,"status":200,"url":"/devices/29ed84a7-7d77-40f8-a3d5-57daac70ebbc/websocket"} gateway-1 | {"time_local":"17/Jul/2024:10:55:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/29ed84a7-7d77-40f8-a3d5-57daac70ebbc/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.022","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"ff2af537442147ade4b848ac2a83333a"} device-1 | {"level":"info","message":"device 'http://localhost/devices/41e60072-42e1-4cee-b77c-dffe0eb081f9' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/29ed84a7-7d77-40f8-a3d5-57daac70ebbc' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxNH0.nkBD_BGKQu0h1UptmnBQs-q1w-RVsdAVUDqi4oV_HsE","level":"info","message":"auth send jwt","requestID":"ac8e0d35d921539f0adbfec9bd43162c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ac8e0d35d921539f0adbfec9bd43162c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ac8e0d35d921539f0adbfec9bd43162c"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":504,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:14Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":504,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.10115,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/41e60072-42e1-4cee-b77c-dffe0eb081f9","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"ac8e0d35d921539f0adbfec9bd43162c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/41e60072-42e1-4cee-b77c-dffe0eb081f9","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213714,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxNH0.nkBD_BGKQu0h1UptmnBQs-q1w-RVsdAVUDqi4oV_HsE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ac8e0d35d921539f0adbfec9bd43162c","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F41e60072-42e1-4cee-b77c-dffe0eb081f9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F41e60072-42e1-4cee-b77c-dffe0eb081f9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:14.208300943Z"}]},"request_id":"877d617c-d8b2-4650-ae89-58830b233aad","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213714.8310337} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ac8e0d35d921539f0adbfec9bd43162c","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ac8e0d35d921539f0adbfec9bd43162c"} gateway-1 | {"time_local":"17/Jul/2024:10:55:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/41e60072-42e1-4cee-b77c-dffe0eb081f9? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ac8e0d35d921539f0adbfec9bd43162c"} device-1 | {"level":"info","message":"GET /devices/41e60072-42e1-4cee-b77c-dffe0eb081f9? 200 12ms","method":"GET","requestID":"ac8e0d35d921539f0adbfec9bd43162c","responseTime":12,"status":200,"url":"/devices/41e60072-42e1-4cee-b77c-dffe0eb081f9?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxNH0.nkBD_BGKQu0h1UptmnBQs-q1w-RVsdAVUDqi4oV_HsE","level":"info","message":"auth send jwt","requestID":"cb2f9b515227c3230d84ceb5b076e89b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"cb2f9b515227c3230d84ceb5b076e89b","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cb2f9b515227c3230d84ceb5b076e89b"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":505,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:14Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":505,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.911568,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/29ed84a7-7d77-40f8-a3d5-57daac70ebbc","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"cb2f9b515227c3230d84ceb5b076e89b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/29ed84a7-7d77-40f8-a3d5-57daac70ebbc","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213714,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxNH0.nkBD_BGKQu0h1UptmnBQs-q1w-RVsdAVUDqi4oV_HsE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"cb2f9b515227c3230d84ceb5b076e89b","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29ed84a7-7d77-40f8-a3d5-57daac70ebbc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29ed84a7-7d77-40f8-a3d5-57daac70ebbc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:14.258082271Z"}]},"request_id":"a6ce7f3c-398a-42b5-a737-a69605010048","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213714.848494} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"cb2f9b515227c3230d84ceb5b076e89b","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cb2f9b515227c3230d84ceb5b076e89b"} device-1 | {"level":"info","message":"GET /devices/29ed84a7-7d77-40f8-a3d5-57daac70ebbc? 200 11ms","method":"GET","requestID":"cb2f9b515227c3230d84ceb5b076e89b","responseTime":11,"status":200,"url":"/devices/29ed84a7-7d77-40f8-a3d5-57daac70ebbc?"} gateway-1 | {"time_local":"17/Jul/2024:10:55:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/29ed84a7-7d77-40f8-a3d5-57daac70ebbc? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"cb2f9b515227c3230d84ceb5b076e89b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxNH0.nkBD_BGKQu0h1UptmnBQs-q1w-RVsdAVUDqi4oV_HsE","level":"info","message":"auth send jwt","requestID":"1308c149dd92394fc9cf9763584459f6"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1308c149dd92394fc9cf9763584459f6","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"1308c149dd92394fc9cf9763584459f6"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":506,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:14Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":506,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.966594,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:14Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1308c149dd92394fc9cf9763584459f6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213714,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxNH0.nkBD_BGKQu0h1UptmnBQs-q1w-RVsdAVUDqi4oV_HsE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1308c149dd92394fc9cf9763584459f6","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9250a480-3745-4b93-b174-eb0c11598b05"},"level":"info","message":"Attempting to run experiment","requestID":"1308c149dd92394fc9cf9763584459f6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9250a480-3745-4b93-b174-eb0c11598b05"},"level":"info","message":"Attempting to book experiment","requestID":"1308c149dd92394fc9cf9763584459f6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9250a480-3745-4b93-b174-eb0c11598b05"},"level":"info","message":"Successfully booked experiment","requestID":"1308c149dd92394fc9cf9763584459f6"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0c188230-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0c18a940-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":507,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:14Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":507,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.314737,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/41e60072-42e1-4cee-b77c-dffe0eb081f9","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0c188230-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/41e60072-42e1-4cee-b77c-dffe0eb081f9","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213714,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxNH0.nkBD_BGKQu0h1UptmnBQs-q1w-RVsdAVUDqi4oV_HsE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0c188230-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:42078","level":"info","msg":"Received request.","req_id":508,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:14Z"} authorization-1 | {"client_addr":"127.0.0.1:42078","level":"info","msg":"Sent response.","req_id":508,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.077079,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/29ed84a7-7d77-40f8-a3d5-57daac70ebbc","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0c18a940-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/29ed84a7-7d77-40f8-a3d5-57daac70ebbc","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213714,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxNH0.nkBD_BGKQu0h1UptmnBQs-q1w-RVsdAVUDqi4oV_HsE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0c18a940-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F41e60072-42e1-4cee-b77c-dffe0eb081f9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F41e60072-42e1-4cee-b77c-dffe0eb081f9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:14.208300943Z"}]},"request_id":"8bd33616-672d-49f5-a420-b4b8064a0e1a","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213714.910868} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29ed84a7-7d77-40f8-a3d5-57daac70ebbc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29ed84a7-7d77-40f8-a3d5-57daac70ebbc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:14.258082271Z"}]},"request_id":"0be60144-6371-43e1-9f0a-75a4d16739c9","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213714.9111707} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"0c188230-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0c18a940-442b-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0c188230-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/41e60072-42e1-4cee-b77c-dffe0eb081f9? 200 22ms","method":"GET","requestID":"0c188230-442b-11ef-8685-a1e9f27e6f28","responseTime":22,"status":200,"url":"/devices/41e60072-42e1-4cee-b77c-dffe0eb081f9?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0c18a940-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/29ed84a7-7d77-40f8-a3d5-57daac70ebbc? 200 23ms","method":"GET","requestID":"0c18a940-442b-11ef-8685-a1e9f27e6f28","responseTime":23,"status":200,"url":"/devices/29ed84a7-7d77-40f8-a3d5-57daac70ebbc?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9250a480-3745-4b93-b174-eb0c11598b05"},"level":"info","message":"Setting up experiment","requestID":"1308c149dd92394fc9cf9763584459f6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9250a480-3745-4b93-b174-eb0c11598b05"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"1308c149dd92394fc9cf9763584459f6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9250a480-3745-4b93-b174-eb0c11598b05"},"level":"info","message":"Successfully locked booking for experiment","requestID":"1308c149dd92394fc9cf9763584459f6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9250a480-3745-4b93-b174-eb0c11598b05"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"1308c149dd92394fc9cf9763584459f6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9250a480-3745-4b93-b174-eb0c11598b05"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"1308c149dd92394fc9cf9763584459f6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9250a480-3745-4b93-b174-eb0c11598b05"},"level":"info","message":"Attempting to update booking for experiment","requestID":"1308c149dd92394fc9cf9763584459f6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9250a480-3745-4b93-b174-eb0c11598b05"},"level":"info","message":"Successfully updated booking for experiment","requestID":"1308c149dd92394fc9cf9763584459f6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9250a480-3745-4b93-b174-eb0c11598b05"},"level":"info","message":"Successfully set up experiment","requestID":"1308c149dd92394fc9cf9763584459f6"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0c24de40-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0c255370-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0c25c8a0-442b-11ef-8685-a1e9f27e6f28"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9250a480-3745-4b93-b174-eb0c11598b05"},"level":"info","message":"Successfully running experiment","requestID":"1308c149dd92394fc9cf9763584459f6"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":509,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:14Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":509,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.284215,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/41e60072-42e1-4cee-b77c-dffe0eb081f9","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0c24de40-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/41e60072-42e1-4cee-b77c-dffe0eb081f9","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213714,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxNH0.nkBD_BGKQu0h1UptmnBQs-q1w-RVsdAVUDqi4oV_HsE"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"0c24de40-442b-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:42078","level":"info","msg":"Received request.","req_id":510,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:14Z"} authorization-1 | {"client_addr":"127.0.0.1:42078","level":"info","msg":"Sent response.","req_id":510,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.782727,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:14Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":511,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/29ed84a7-7d77-40f8-a3d5-57daac70ebbc","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0c255370-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/29ed84a7-7d77-40f8-a3d5-57daac70ebbc","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213714,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxNH0.nkBD_BGKQu0h1UptmnBQs-q1w-RVsdAVUDqi4oV_HsE"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"0c255370-442b-11ef-8685-a1e9f27e6f28","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":511,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.41117,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:14Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F41e60072-42e1-4cee-b77c-dffe0eb081f9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"05ce0820-6a06-423f-81bb-925fb7bc0319","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213714.9954672} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/41e60072-42e1-4cee-b77c-dffe0eb081f9","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0c25c8a0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/41e60072-42e1-4cee-b77c-dffe0eb081f9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"0c25c8a0-442b-11ef-8685-a1e9f27e6f28","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F41e60072-42e1-4cee-b77c-dffe0eb081f9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F41e60072-42e1-4cee-b77c-dffe0eb081f9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:14.208300943Z"}]},"request_id":"ca727bf3-86c0-455c-aca8-218ce29e03e6","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213714.9995952} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0c25c8a0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"0c24de40-442b-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices/41e60072-42e1-4cee-b77c-dffe0eb081f9/signaling 200 18ms","method":"POST","requestID":"0c25c8a0-442b-11ef-8685-a1e9f27e6f28","responseTime":18,"status":200,"url":"/devices/41e60072-42e1-4cee-b77c-dffe0eb081f9/signaling"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29ed84a7-7d77-40f8-a3d5-57daac70ebbc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29ed84a7-7d77-40f8-a3d5-57daac70ebbc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:14.258082271Z"}]},"request_id":"62518301-4d62-4dba-9a62-ce8cc210896a","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213715.0037253} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"0c255370-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0c292400-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0c24de40-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/41e60072-42e1-4cee-b77c-dffe0eb081f9? 200 33ms","method":"GET","requestID":"0c24de40-442b-11ef-8685-a1e9f27e6f28","responseTime":33,"status":200,"url":"/devices/41e60072-42e1-4cee-b77c-dffe0eb081f9?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0c255370-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/29ed84a7-7d77-40f8-a3d5-57daac70ebbc? 200 31ms","method":"GET","requestID":"0c255370-442b-11ef-8685-a1e9f27e6f28","responseTime":31,"status":200,"url":"/devices/29ed84a7-7d77-40f8-a3d5-57daac70ebbc?"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":512,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:15Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9250a480-3745-4b93-b174-eb0c11598b05#owner@http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9250a480-3745-4b93-b174-eb0c11598b05","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"89a078b9-fde5-4aac-ba78-c3cfacb6b377","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213715.0149288} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29ed84a7-7d77-40f8-a3d5-57daac70ebbc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"eb3f00f9-bbee-4fec-9429-69b34afddd05","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213715.015038} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"11b8ab30-f1c0-423b-9a8a-defe6515c7d3","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213715.0155308} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":512,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.593837,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:15Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0c2a8390-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/29ed84a7-7d77-40f8-a3d5-57daac70ebbc","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0c292400-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/29ed84a7-7d77-40f8-a3d5-57daac70ebbc","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"0c292400-442b-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/update 200 26ms","method":"POST","requestID":"1308c149dd92394fc9cf9763584459f6","responseTime":26,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":513,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:15Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0c292400-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F41e60072-42e1-4cee-b77c-dffe0eb081f9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f8ceb291-be87-427d-bfe9-afcf1ae62ba6","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213715.0240812} device-1 | {"level":"info","message":"POST /devices/29ed84a7-7d77-40f8-a3d5-57daac70ebbc/signaling 200 16ms","method":"POST","requestID":"0c292400-442b-11ef-8685-a1e9f27e6f28","responseTime":16,"status":200,"url":"/devices/29ed84a7-7d77-40f8-a3d5-57daac70ebbc/signaling"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":513,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.616065,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/41e60072-42e1-4cee-b77c-dffe0eb081f9","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0c2a8390-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/41e60072-42e1-4cee-b77c-dffe0eb081f9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"0c2a8390-442b-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/9250a480-3745-4b93-b174-eb0c11598b05","user":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"1308c149dd92394fc9cf9763584459f6"} gateway-1 | {"time_local":"17/Jul/2024:10:55:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1295","request_time":"0.175","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1308c149dd92394fc9cf9763584459f6"} experiment-1 | {"level":"info","message":"POST /experiments? 201 170ms","method":"POST","requestID":"1308c149dd92394fc9cf9763584459f6","responseTime":170,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0c2a8390-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/41e60072-42e1-4cee-b77c-dffe0eb081f9/signaling 200 12ms","method":"POST","requestID":"0c2a8390-442b-11ef-8685-a1e9f27e6f28","responseTime":12,"status":200,"url":"/devices/41e60072-42e1-4cee-b77c-dffe0eb081f9/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0c2ca670-442b-11ef-8685-a1e9f27e6f28"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxNX0.FReVTcbjANKyYhOWqoemePIPMRb2uLJYvHtpjDDYuSk","level":"info","message":"auth send jwt","requestID":"30748e041296d60e1b79caba19ca4d1b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"30748e041296d60e1b79caba19ca4d1b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"30748e041296d60e1b79caba19ca4d1b"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":514,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:15Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29ed84a7-7d77-40f8-a3d5-57daac70ebbc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"14fee150-0afa-42bd-89af-b19163a9029a","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213715.03724} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":514,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.620502,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:15Z"} authorization-1 | {"client_addr":"127.0.0.1:42078","level":"info","msg":"Received request.","req_id":515,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/29ed84a7-7d77-40f8-a3d5-57daac70ebbc","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0c2ca670-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/29ed84a7-7d77-40f8-a3d5-57daac70ebbc","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0c2ca670-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:42078","level":"info","msg":"Sent response.","req_id":515,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.725912,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/41e60072-42e1-4cee-b77c-dffe0eb081f9","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"30748e041296d60e1b79caba19ca4d1b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/41e60072-42e1-4cee-b77c-dffe0eb081f9","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213715,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxNX0.FReVTcbjANKyYhOWqoemePIPMRb2uLJYvHtpjDDYuSk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"30748e041296d60e1b79caba19ca4d1b","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0c2ca670-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/29ed84a7-7d77-40f8-a3d5-57daac70ebbc/signaling 200 12ms","method":"POST","requestID":"0c2ca670-442b-11ef-8685-a1e9f27e6f28","responseTime":12,"status":200,"url":"/devices/29ed84a7-7d77-40f8-a3d5-57daac70ebbc/signaling"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F41e60072-42e1-4cee-b77c-dffe0eb081f9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F41e60072-42e1-4cee-b77c-dffe0eb081f9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:14.208300943Z"}]},"request_id":"d586fa41-0a78-426a-abf2-3821a452bd3b","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213715.0439851} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9250a480-3745-4b93-b174-eb0c11598b05"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"1308c149dd92394fc9cf9763584459f6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9250a480-3745-4b93-b174-eb0c11598b05"},"level":"info","message":"Building connection plan","requestID":"1308c149dd92394fc9cf9763584459f6"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"1b3a8ca4-0e1c-4c25-830d-93273b031016"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"c541e6be-0dff-4137-81f3-766ba5d5d13e"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"b07c3de9-328b-4fa9-9464-d15c90c54c26"}]},"level":"info","message":"Built pairwise service configurations","requestID":"1308c149dd92394fc9cf9763584459f6"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"30748e041296d60e1b79caba19ca4d1b","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/41e60072-42e1-4cee-b77c-dffe0eb081f9"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/29ed84a7-7d77-40f8-a3d5-57daac70ebbc"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"1308c149dd92394fc9cf9763584459f6"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"0c2ef060-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"30748e041296d60e1b79caba19ca4d1b"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":516,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:15Z"} device-1 | {"level":"info","message":"GET /devices/41e60072-42e1-4cee-b77c-dffe0eb081f9? 200 16ms","method":"GET","requestID":"30748e041296d60e1b79caba19ca4d1b","responseTime":16,"status":200,"url":"/devices/41e60072-42e1-4cee-b77c-dffe0eb081f9?"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":516,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.848337,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:15Z"} gateway-1 | {"time_local":"17/Jul/2024:10:55:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/41e60072-42e1-4cee-b77c-dffe0eb081f9? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"30748e041296d60e1b79caba19ca4d1b"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0c2ef060-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213714,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxNH0.nkBD_BGKQu0h1UptmnBQs-q1w-RVsdAVUDqi4oV_HsE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0c2ef060-442b-11ef-8685-a1e9f27e6f28","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxNX0.FReVTcbjANKyYhOWqoemePIPMRb2uLJYvHtpjDDYuSk","level":"info","message":"auth send jwt","requestID":"f18a6dbc4ce1eef20fd22fd17c066869"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"f18a6dbc4ce1eef20fd22fd17c066869","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f18a6dbc4ce1eef20fd22fd17c066869"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"973d90bf-a148-48fa-a12f-2e95a95377db","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213715.0600486} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3bbd2455-608d-4fbd-87cb-e4c2a86e4161","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213715.0602555} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"0c2ef060-442b-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":517,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:15Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":517,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.845286,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/29ed84a7-7d77-40f8-a3d5-57daac70ebbc","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f18a6dbc4ce1eef20fd22fd17c066869","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/29ed84a7-7d77-40f8-a3d5-57daac70ebbc","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213715,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxNX0.FReVTcbjANKyYhOWqoemePIPMRb2uLJYvHtpjDDYuSk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f18a6dbc4ce1eef20fd22fd17c066869","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29ed84a7-7d77-40f8-a3d5-57daac70ebbc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29ed84a7-7d77-40f8-a3d5-57daac70ebbc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:14.258082271Z"}]},"request_id":"06ea8e2a-3e0f-4912-92c0-6f9eb5ab6148","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213715.0682273} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f18a6dbc4ce1eef20fd22fd17c066869","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"0c2ef060-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"0c2ef060-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/29f8e6fb-fc7f-47ee-9665-403063016307'","requestID":"0c2ef060-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/29f8e6fb-fc7f-47ee-9665-403063016307'","requestID":"0c2ef060-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"0c2ef060-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 32ms","method":"POST","requestID":"0c2ef060-442b-11ef-8685-a1e9f27e6f28","responseTime":32,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f18a6dbc4ce1eef20fd22fd17c066869"} gateway-1 | {"time_local":"17/Jul/2024:10:55:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/29ed84a7-7d77-40f8-a3d5-57daac70ebbc? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f18a6dbc4ce1eef20fd22fd17c066869"} device-1 | {"level":"info","message":"GET /devices/29ed84a7-7d77-40f8-a3d5-57daac70ebbc? 200 23ms","method":"GET","requestID":"f18a6dbc4ce1eef20fd22fd17c066869","responseTime":23,"status":200,"url":"/devices/29ed84a7-7d77-40f8-a3d5-57daac70ebbc?"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"0c2ef060-442b-11ef-8685-a1e9f27e6f28"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9250a480-3745-4b93-b174-eb0c11598b05"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"1308c149dd92394fc9cf9763584459f6"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0c37f110-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":518,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:15Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F41e60072-42e1-4cee-b77c-dffe0eb081f9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8ba04e69-e7f4-475b-9172-25b3152e0498","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213715.109953} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":518,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.228337,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/41e60072-42e1-4cee-b77c-dffe0eb081f9","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0c37f110-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/41e60072-42e1-4cee-b77c-dffe0eb081f9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0c37f110-442b-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0c37f110-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/41e60072-42e1-4cee-b77c-dffe0eb081f9/signaling 200 9ms","method":"POST","requestID":"0c37f110-442b-11ef-8685-a1e9f27e6f28","responseTime":9,"status":200,"url":"/devices/41e60072-42e1-4cee-b77c-dffe0eb081f9/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0c39c5d0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":519,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:15Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29ed84a7-7d77-40f8-a3d5-57daac70ebbc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"08ebddfa-35ca-48a1-8167-fb787b08a162","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213715.1220713} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":519,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.893824,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/29ed84a7-7d77-40f8-a3d5-57daac70ebbc","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0c39c5d0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/29ed84a7-7d77-40f8-a3d5-57daac70ebbc","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0c39c5d0-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0c39c5d0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/29ed84a7-7d77-40f8-a3d5-57daac70ebbc/signaling 200 10ms","method":"POST","requestID":"0c39c5d0-442b-11ef-8685-a1e9f27e6f28","responseTime":10,"status":200,"url":"/devices/29ed84a7-7d77-40f8-a3d5-57daac70ebbc/signaling"} device-1 | {"device":"29ed84a7-7d77-40f8-a3d5-57daac70ebbc","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"29f8e6fb-fc7f-47ee-9665-403063016307","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"41e60072-42e1-4cee-b77c-dffe0eb081f9","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"29f8e6fb-fc7f-47ee-9665-403063016307","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"41e60072-42e1-4cee-b77c-dffe0eb081f9","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"41e60072-42e1-4cee-b77c-dffe0eb081f9","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"41e60072-42e1-4cee-b77c-dffe0eb081f9","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"41e60072-42e1-4cee-b77c-dffe0eb081f9","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/29f8e6fb-fc7f-47ee-9665-403063016307' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"29f8e6fb-fc7f-47ee-9665-403063016307","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"bcfa0cc5c7f514387ef2d52fa6e807b5","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"bcfa0cc5c7f514387ef2d52fa6e807b5","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/41e60072-42e1-4cee-b77c-dffe0eb081f9"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/29ed84a7-7d77-40f8-a3d5-57daac70ebbc"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/29f8e6fb-fc7f-47ee-9665-403063016307"}}},"level":"info","message":"received a callback","requestID":"bcfa0cc5c7f514387ef2d52fa6e807b5"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 8ms","method":"POST","requestID":"bcfa0cc5c7f514387ef2d52fa6e807b5","responseTime":8,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:55:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.011","http_referrer":"","http_user_agent":"node-fetch","requestID":"bcfa0cc5c7f514387ef2d52fa6e807b5"} device-1 | {"device":"29ed84a7-7d77-40f8-a3d5-57daac70ebbc","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"29ed84a7-7d77-40f8-a3d5-57daac70ebbc","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"29ed84a7-7d77-40f8-a3d5-57daac70ebbc","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"29f8e6fb-fc7f-47ee-9665-403063016307","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"41e60072-42e1-4cee-b77c-dffe0eb081f9","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"29ed84a7-7d77-40f8-a3d5-57daac70ebbc","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"41e60072-42e1-4cee-b77c-dffe0eb081f9","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"29ed84a7-7d77-40f8-a3d5-57daac70ebbc","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"29f8e6fb-fc7f-47ee-9665-403063016307","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/29f8e6fb-fc7f-47ee-9665-403063016307' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"29f8e6fb-fc7f-47ee-9665-403063016307","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0a4c6973b8dc7bca29627b2c673d76b4","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"0a4c6973b8dc7bca29627b2c673d76b4","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/41e60072-42e1-4cee-b77c-dffe0eb081f9"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/29ed84a7-7d77-40f8-a3d5-57daac70ebbc"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/29f8e6fb-fc7f-47ee-9665-403063016307"}}},"level":"info","message":"received a callback","requestID":"0a4c6973b8dc7bca29627b2c673d76b4"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"0d78fc90-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":520,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:17Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F29f8e6fb-fc7f-47ee-9665-403063016307","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"786f92c0-5277-441c-97bd-ae67c010460e","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213717.2158566} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":520,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.254616,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/29f8e6fb-fc7f-47ee-9665-403063016307","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0d78fc90-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/29f8e6fb-fc7f-47ee-9665-403063016307","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"0d78fc90-442b-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"0d78fc90-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /peerconnections/29f8e6fb-fc7f-47ee-9665-403063016307 200 13ms","method":"GET","requestID":"0d78fc90-442b-11ef-8685-a1e9f27e6f28","responseTime":13,"status":200,"url":"/peerconnections/29f8e6fb-fc7f-47ee-9665-403063016307"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 48ms","method":"POST","requestID":"0a4c6973b8dc7bca29627b2c673d76b4","responseTime":48,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:55:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.052","http_referrer":"","http_user_agent":"node-fetch","requestID":"0a4c6973b8dc7bca29627b2c673d76b4"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0d7f1710-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":521,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:17Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":521,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.920497,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:17Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F41e60072-42e1-4cee-b77c-dffe0eb081f9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3b34c272-03e0-4c21-873f-fbfd23c708ae","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213717.255516} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/41e60072-42e1-4cee-b77c-dffe0eb081f9","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0d7f1710-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/41e60072-42e1-4cee-b77c-dffe0eb081f9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"0d7f1710-442b-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0d7f1710-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/41e60072-42e1-4cee-b77c-dffe0eb081f9/signaling 200 14ms","method":"POST","requestID":"0d7f1710-442b-11ef-8685-a1e9f27e6f28","responseTime":14,"status":200,"url":"/devices/41e60072-42e1-4cee-b77c-dffe0eb081f9/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0d81d630-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":522,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:17Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29ed84a7-7d77-40f8-a3d5-57daac70ebbc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2832f533-c7dc-4ef6-85cc-37d52872cbd1","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213717.2749739} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":522,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.011816,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/29ed84a7-7d77-40f8-a3d5-57daac70ebbc","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0d81d630-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/29ed84a7-7d77-40f8-a3d5-57daac70ebbc","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"0d81d630-442b-11ef-8685-a1e9f27e6f28","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0d81d630-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/29ed84a7-7d77-40f8-a3d5-57daac70ebbc/signaling 200 15ms","method":"POST","requestID":"0d81d630-442b-11ef-8685-a1e9f27e6f28","responseTime":15,"status":200,"url":"/devices/29ed84a7-7d77-40f8-a3d5-57daac70ebbc/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxN30.fWXPLvpiv4aXE69CY-DqVJFL4_aGpGhZqyC-JHY3fqk","level":"info","message":"auth send jwt","requestID":"98edeb0f3c189ed35f47f6ce303ec108"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"98edeb0f3c189ed35f47f6ce303ec108","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/9250a480-3745-4b93-b174-eb0c11598b05","requestID":"98edeb0f3c189ed35f47f6ce303ec108"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":523,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:17Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":523,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.269608,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/9250a480-3745-4b93-b174-eb0c11598b05","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"98edeb0f3c189ed35f47f6ce303ec108","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:http://localhost/experiments/9250a480-3745-4b93-b174-eb0c11598b05","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213717,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxN30.fWXPLvpiv4aXE69CY-DqVJFL4_aGpGhZqyC-JHY3fqk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"98edeb0f3c189ed35f47f6ce303ec108","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/9250a480-3745-4b93-b174-eb0c11598b05","requestID":"98edeb0f3c189ed35f47f6ce303ec108"} gateway-1 | {"time_local":"17/Jul/2024:10:55:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/9250a480-3745-4b93-b174-eb0c11598b05 HTTP/1.1","status": "200","body_bytes_sent":"1368","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"98edeb0f3c189ed35f47f6ce303ec108"} experiment-1 | {"level":"info","message":"GET /experiments/9250a480-3745-4b93-b174-eb0c11598b05 200 16ms","method":"GET","requestID":"98edeb0f3c189ed35f47f6ce303ec108","responseTime":16,"status":200,"url":"/experiments/9250a480-3745-4b93-b174-eb0c11598b05"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxN30.fWXPLvpiv4aXE69CY-DqVJFL4_aGpGhZqyC-JHY3fqk","level":"info","message":"auth send jwt","requestID":"449fcb5fb0955ddf24388a99300f2ee6"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"449fcb5fb0955ddf24388a99300f2ee6","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/9250a480-3745-4b93-b174-eb0c11598b05","requestID":"449fcb5fb0955ddf24388a99300f2ee6"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":524,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:17Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":524,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.19632,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:17Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/9250a480-3745-4b93-b174-eb0c11598b05","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"449fcb5fb0955ddf24388a99300f2ee6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:http://localhost/experiments/9250a480-3745-4b93-b174-eb0c11598b05","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213717,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxN30.fWXPLvpiv4aXE69CY-DqVJFL4_aGpGhZqyC-JHY3fqk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"449fcb5fb0955ddf24388a99300f2ee6","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9250a480-3745-4b93-b174-eb0c11598b05"},"level":"info","message":"Attempting to finish experiment","requestID":"449fcb5fb0955ddf24388a99300f2ee6"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"0d8c5d80-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":525,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:17Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":525,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.349522,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:17Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/29f8e6fb-fc7f-47ee-9665-403063016307","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0d8c5d80-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"peerconnection:http://localhost/peerconnections/29f8e6fb-fc7f-47ee-9665-403063016307","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213717,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxN30.fWXPLvpiv4aXE69CY-DqVJFL4_aGpGhZqyC-JHY3fqk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0d8c5d80-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"device":"41e60072-42e1-4cee-b77c-dffe0eb081f9","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"41e60072-42e1-4cee-b77c-dffe0eb081f9","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"41e60072-42e1-4cee-b77c-dffe0eb081f9","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"29ed84a7-7d77-40f8-a3d5-57daac70ebbc","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"29ed84a7-7d77-40f8-a3d5-57daac70ebbc","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"29ed84a7-7d77-40f8-a3d5-57daac70ebbc","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/29f8e6fb-fc7f-47ee-9665-403063016307' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/29f8e6fb-fc7f-47ee-9665-403063016307' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"29f8e6fb-fc7f-47ee-9665-403063016307","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F29f8e6fb-fc7f-47ee-9665-403063016307': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F29f8e6fb-fc7f-47ee-9665-403063016307","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]},"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":null},"raw_response":{},"request_id":"90e4faf8-9472-4ae8-82df-022ca7e53aea","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213717.365168} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b3c6cb5f-b77f-470d-acb1-18755d159544","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213717.3656187} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7a806029c4decc546c51600ae739595f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"0d8c5d80-442b-11ef-8685-a1e9f27e6f28","responseTime":14,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"7a806029c4decc546c51600ae739595f","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f68560c0679f7cd7ce7ab04b0d478d19","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/41e60072-42e1-4cee-b77c-dffe0eb081f9"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/29ed84a7-7d77-40f8-a3d5-57daac70ebbc"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/29f8e6fb-fc7f-47ee-9665-403063016307"}}},"level":"info","message":"received a callback","requestID":"7a806029c4decc546c51600ae739595f"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"f68560c0679f7cd7ce7ab04b0d478d19","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/41e60072-42e1-4cee-b77c-dffe0eb081f9"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/29ed84a7-7d77-40f8-a3d5-57daac70ebbc"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/29f8e6fb-fc7f-47ee-9665-403063016307"}}},"level":"info","message":"received a callback","requestID":"f68560c0679f7cd7ce7ab04b0d478d19"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"0d8c5d80-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"DELETE /peerconnections/29f8e6fb-fc7f-47ee-9665-403063016307 204 54ms","method":"DELETE","requestID":"0d8c5d80-442b-11ef-8685-a1e9f27e6f28","responseTime":54,"status":204,"url":"/peerconnections/29f8e6fb-fc7f-47ee-9665-403063016307"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/29ed84a7-7d77-40f8-a3d5-57daac70ebbc'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9250a480-3745-4b93-b174-eb0c11598b05"},"level":"info","message":"Successfully finished experiment","requestID":"449fcb5fb0955ddf24388a99300f2ee6"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0d97f640-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":526,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:17Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F41e60072-42e1-4cee-b77c-dffe0eb081f9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7ef02a6c-f2e0-4ac0-9772-9bda14c9cbdc","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213717.417672} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":526,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.198034,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/41e60072-42e1-4cee-b77c-dffe0eb081f9","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0d97f640-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/41e60072-42e1-4cee-b77c-dffe0eb081f9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0d97f640-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9250a480-3745-4b93-b174-eb0c11598b05': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9250a480-3745-4b93-b174-eb0c11598b05","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]},"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":null},"raw_response":{},"request_id":"5be7ba81-94d2-4698-aa1a-0bda2c83daee","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213717.423456} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0d97f640-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/41e60072-42e1-4cee-b77c-dffe0eb081f9/signaling 200 12ms","method":"POST","requestID":"0d97f640-442b-11ef-8685-a1e9f27e6f28","responseTime":12,"status":200,"url":"/devices/41e60072-42e1-4cee-b77c-dffe0eb081f9/signaling"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5d2046b5-119a-4a33-bae7-a2d8e239aefa","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213717.4239316} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"449fcb5fb0955ddf24388a99300f2ee6","responseTime":14,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0d9a1920-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":527,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:17Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F29ed84a7-7d77-40f8-a3d5-57daac70ebbc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"60b72a22-5baa-4b30-b76b-e1739d883689","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213717.4314206} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":527,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.854792,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/29ed84a7-7d77-40f8-a3d5-57daac70ebbc","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0d9a1920-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/29ed84a7-7d77-40f8-a3d5-57daac70ebbc","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"0d9a1920-442b-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0d9a1920-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/29ed84a7-7d77-40f8-a3d5-57daac70ebbc/signaling 200 12ms","method":"POST","requestID":"0d9a1920-442b-11ef-8685-a1e9f27e6f28","responseTime":12,"status":200,"url":"/devices/29ed84a7-7d77-40f8-a3d5-57daac70ebbc/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/9250a480-3745-4b93-b174-eb0c11598b05","requestID":"449fcb5fb0955ddf24388a99300f2ee6"} gateway-1 | {"time_local":"17/Jul/2024:10:55:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/9250a480-3745-4b93-b174-eb0c11598b05 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.180","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"449fcb5fb0955ddf24388a99300f2ee6"} experiment-1 | {"level":"info","message":"DELETE /experiments/9250a480-3745-4b93-b174-eb0c11598b05 204 176ms","method":"DELETE","requestID":"449fcb5fb0955ddf24388a99300f2ee6","responseTime":176,"status":204,"url":"/experiments/9250a480-3745-4b93-b174-eb0c11598b05"} gateway-1 | {"time_local":"17/Jul/2024:10:55:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2747","request_time":"2.709","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"71c16a8f5d8f0a1095ee9f8871f8b599"} gateway-1 | {"time_local":"17/Jul/2024:10:55:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2745","request_time":"2.698","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"73094ac3ff8b40f563e34984e0072c19"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 128ms","method":"POST","requestID":"7a806029c4decc546c51600ae739595f","responseTime":128,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:55:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.132","http_referrer":"","http_user_agent":"node-fetch","requestID":"7a806029c4decc546c51600ae739595f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 126ms","method":"POST","requestID":"f68560c0679f7cd7ce7ab04b0d478d19","responseTime":126,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:55:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.133","http_referrer":"","http_user_agent":"node-fetch","requestID":"f68560c0679f7cd7ce7ab04b0d478d19"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxN30.fWXPLvpiv4aXE69CY-DqVJFL4_aGpGhZqyC-JHY3fqk","level":"info","message":"auth send jwt","requestID":"5066866b9407f86796ffc787e55af26e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5066866b9407f86796ffc787e55af26e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"5066866b9407f86796ffc787e55af26e"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/29ed84a7-7d77-40f8-a3d5-57daac70ebbc' closed"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":528,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:17Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":528,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.84636,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:17Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"5066866b9407f86796ffc787e55af26e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213717,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxN30.fWXPLvpiv4aXE69CY-DqVJFL4_aGpGhZqyC-JHY3fqk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5066866b9407f86796ffc787e55af26e","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/41e60072-42e1-4cee-b77c-dffe0eb081f9' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae15dcb2-f22b-4115-b970-ac9b971e8373","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"625742f6-e745-432b-b8cc-a3de0a3f08e0","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213717.5257022} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5066866b9407f86796ffc787e55af26e","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fad7629a-ee5c-4d92-9f2e-51bc821c2798","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213717.5322657} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"5066866b9407f86796ffc787e55af26e","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae15dcb2-f22b-4115-b970-ac9b971e8373","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"71aa086a-a921-4b4a-8fc3-9eb76b6dc658","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213717.5435112} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fc062ebc-7aa4-4b91-986c-ab183fa0f45c","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213717.5437129} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"5066866b9407f86796ffc787e55af26e","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae15dcb2-f22b-4115-b970-ac9b971e8373","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae15dcb2-f22b-4115-b970-ac9b971e8373","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:17.543485031Z"}]},"request_id":"4f80fa57-05f2-48e0-971f-ce6e77d8b7c1","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213717.5491233} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5066866b9407f86796ffc787e55af26e","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"5066866b9407f86796ffc787e55af26e"} gateway-1 | {"time_local":"17/Jul/2024:10:55:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.054","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5066866b9407f86796ffc787e55af26e"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"5066866b9407f86796ffc787e55af26e","responseTime":47,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxN30.fWXPLvpiv4aXE69CY-DqVJFL4_aGpGhZqyC-JHY3fqk","level":"info","message":"auth send jwt","requestID":"bc7ed3e99b433a636d2d5db55fb30d59"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"bc7ed3e99b433a636d2d5db55fb30d59","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"bc7ed3e99b433a636d2d5db55fb30d59"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":529,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:17Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":529,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.871345,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:17Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"bc7ed3e99b433a636d2d5db55fb30d59","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213717,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxN30.fWXPLvpiv4aXE69CY-DqVJFL4_aGpGhZqyC-JHY3fqk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"bc7ed3e99b433a636d2d5db55fb30d59","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F262cebb5-9ccd-4bbc-996f-2bdedf262389","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"8b670697-7ea5-4a21-9679-65fe04c98f85","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213717.5731223} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"bc7ed3e99b433a636d2d5db55fb30d59","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c3bd2783-361c-4d27-907f-fcd982951cf5","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213717.5787241} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"bc7ed3e99b433a636d2d5db55fb30d59","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F262cebb5-9ccd-4bbc-996f-2bdedf262389","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"fbf2322e-93b3-420a-abe1-a3886d685b64","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213717.5949965} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6c95eecc-a7ba-40ab-8738-339d0d6ce449","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213717.5950825} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"bc7ed3e99b433a636d2d5db55fb30d59","responseTime":19,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F262cebb5-9ccd-4bbc-996f-2bdedf262389","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F262cebb5-9ccd-4bbc-996f-2bdedf262389","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:17.594963370Z"}]},"request_id":"3d892ee4-9367-48d7-8466-1f48db6f5a57","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213717.6007895} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"bc7ed3e99b433a636d2d5db55fb30d59","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"bc7ed3e99b433a636d2d5db55fb30d59"} gateway-1 | {"time_local":"17/Jul/2024:10:55:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bc7ed3e99b433a636d2d5db55fb30d59"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"bc7ed3e99b433a636d2d5db55fb30d59","responseTime":47,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxOH0.oRRYLMtWR1DIufMfThYZWkgGGhCLPv-zX76ODHu1vj4","level":"info","message":"auth send jwt","requestID":"8a346470db1c36d0fb524dfca6881748"} authentication-1 | {"level":"info","message":"GET /auth 200 8ms","method":"GET","requestID":"8a346470db1c36d0fb524dfca6881748","responseTime":8,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxOH0.oRRYLMtWR1DIufMfThYZWkgGGhCLPv-zX76ODHu1vj4","level":"info","message":"auth send jwt","requestID":"ada69d1b6703150a252ef9a040b9c99d"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"ada69d1b6703150a252ef9a040b9c99d","responseTime":7,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"8a346470db1c36d0fb524dfca6881748"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"ada69d1b6703150a252ef9a040b9c99d"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":530,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:18Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":530,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.682425,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:18Z"} authorization-1 | {"client_addr":"127.0.0.1:42078","level":"info","msg":"Received request.","req_id":531,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:18Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/262cebb5-9ccd-4bbc-996f-2bdedf262389","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"8a346470db1c36d0fb524dfca6881748","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/262cebb5-9ccd-4bbc-996f-2bdedf262389","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213718,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxOH0.oRRYLMtWR1DIufMfThYZWkgGGhCLPv-zX76ODHu1vj4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8a346470db1c36d0fb524dfca6881748","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:42078","level":"info","msg":"Sent response.","req_id":531,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.340586,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:18Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ae15dcb2-f22b-4115-b970-ac9b971e8373","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"ada69d1b6703150a252ef9a040b9c99d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/ae15dcb2-f22b-4115-b970-ac9b971e8373","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213718,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxOH0.oRRYLMtWR1DIufMfThYZWkgGGhCLPv-zX76ODHu1vj4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ada69d1b6703150a252ef9a040b9c99d","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F262cebb5-9ccd-4bbc-996f-2bdedf262389","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F262cebb5-9ccd-4bbc-996f-2bdedf262389","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:17.594963370Z"}]},"request_id":"7d3842fd-eb79-40f0-a9a0-80c2028c4c83","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213718.0893543} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8a346470db1c36d0fb524dfca6881748","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae15dcb2-f22b-4115-b970-ac9b971e8373","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae15dcb2-f22b-4115-b970-ac9b971e8373","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:17.543485031Z"}]},"request_id":"f9af7cfd-b15f-4c42-836d-a13e671a668c","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213718.089947} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ada69d1b6703150a252ef9a040b9c99d","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"21fb868a-86f0-4e87-b027-675a349b7cee","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213718.0946186} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"8a346470db1c36d0fb524dfca6881748","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"aa5d4f47-3e43-4096-9053-fda0177c7dd5","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213718.0968606} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"ada69d1b6703150a252ef9a040b9c99d","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae15dcb2-f22b-4115-b970-ac9b971e8373","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae15dcb2-f22b-4115-b970-ac9b971e8373","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:17.543485031Z"}]},"request_id":"fd3d3d87-d754-4fd4-9ef4-b6153d12d794","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213718.099486} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"ada69d1b6703150a252ef9a040b9c99d","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"ada69d1b6703150a252ef9a040b9c99d"} gateway-1 | {"time_local":"17/Jul/2024:10:55:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/ae15dcb2-f22b-4115-b970-ac9b971e8373 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.034","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"ada69d1b6703150a252ef9a040b9c99d"} device-1 | {"level":"info","message":"PATCH /devices/ae15dcb2-f22b-4115-b970-ac9b971e8373 200 23ms","method":"PATCH","requestID":"ada69d1b6703150a252ef9a040b9c99d","responseTime":23,"status":200,"url":"/devices/ae15dcb2-f22b-4115-b970-ac9b971e8373"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxOH0.oRRYLMtWR1DIufMfThYZWkgGGhCLPv-zX76ODHu1vj4","level":"info","message":"auth send jwt","requestID":"2a6e59cc6786c5c4fa603f1b16e4409c"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"2a6e59cc6786c5c4fa603f1b16e4409c","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"2a6e59cc6786c5c4fa603f1b16e4409c"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":532,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:18Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":532,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.683444,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:18Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ae15dcb2-f22b-4115-b970-ac9b971e8373","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"2a6e59cc6786c5c4fa603f1b16e4409c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/ae15dcb2-f22b-4115-b970-ac9b971e8373","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213718,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxOH0.oRRYLMtWR1DIufMfThYZWkgGGhCLPv-zX76ODHu1vj4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2a6e59cc6786c5c4fa603f1b16e4409c","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F262cebb5-9ccd-4bbc-996f-2bdedf262389","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F262cebb5-9ccd-4bbc-996f-2bdedf262389","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:17.594963370Z"}]},"request_id":"cda74708-a6ae-4060-b31d-7c05a7bc52f7","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213718.1105282} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8a346470db1c36d0fb524dfca6881748","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"8a346470db1c36d0fb524dfca6881748"} device-1 | {"level":"info","message":"PATCH /devices/262cebb5-9ccd-4bbc-996f-2bdedf262389 200 36ms","method":"PATCH","requestID":"8a346470db1c36d0fb524dfca6881748","responseTime":36,"status":200,"url":"/devices/262cebb5-9ccd-4bbc-996f-2bdedf262389"} gateway-1 | {"time_local":"17/Jul/2024:10:55:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/262cebb5-9ccd-4bbc-996f-2bdedf262389 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.046","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"8a346470db1c36d0fb524dfca6881748"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxOH0.oRRYLMtWR1DIufMfThYZWkgGGhCLPv-zX76ODHu1vj4","level":"info","message":"auth send jwt","requestID":"9020602ffe85c33e2e9c9bf59c9073d9"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"9020602ffe85c33e2e9c9bf59c9073d9","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"9020602ffe85c33e2e9c9bf59c9073d9"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":533,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:18Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":533,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.667261,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:18Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/262cebb5-9ccd-4bbc-996f-2bdedf262389","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"9020602ffe85c33e2e9c9bf59c9073d9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/262cebb5-9ccd-4bbc-996f-2bdedf262389","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213718,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxOH0.oRRYLMtWR1DIufMfThYZWkgGGhCLPv-zX76ODHu1vj4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"9020602ffe85c33e2e9c9bf59c9073d9","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"2a6e59cc6786c5c4fa603f1b16e4409c"} gateway-1 | {"time_local":"17/Jul/2024:10:55:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/ae15dcb2-f22b-4115-b970-ac9b971e8373/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.022","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"2a6e59cc6786c5c4fa603f1b16e4409c"} device-1 | {"level":"info","message":"POST /devices/ae15dcb2-f22b-4115-b970-ac9b971e8373/websocket 200 18ms","method":"POST","requestID":"2a6e59cc6786c5c4fa603f1b16e4409c","responseTime":18,"status":200,"url":"/devices/ae15dcb2-f22b-4115-b970-ac9b971e8373/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"9020602ffe85c33e2e9c9bf59c9073d9"} gateway-1 | {"time_local":"17/Jul/2024:10:55:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/262cebb5-9ccd-4bbc-996f-2bdedf262389/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.018","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"9020602ffe85c33e2e9c9bf59c9073d9"} device-1 | {"level":"info","message":"POST /devices/262cebb5-9ccd-4bbc-996f-2bdedf262389/websocket 200 15ms","method":"POST","requestID":"9020602ffe85c33e2e9c9bf59c9073d9","responseTime":15,"status":200,"url":"/devices/262cebb5-9ccd-4bbc-996f-2bdedf262389/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/ae15dcb2-f22b-4115-b970-ac9b971e8373' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/262cebb5-9ccd-4bbc-996f-2bdedf262389' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxOH0.oRRYLMtWR1DIufMfThYZWkgGGhCLPv-zX76ODHu1vj4","level":"info","message":"auth send jwt","requestID":"8d84a59ae1c15452c3ffb5f74b0c4354"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"8d84a59ae1c15452c3ffb5f74b0c4354","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8d84a59ae1c15452c3ffb5f74b0c4354"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":534,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:18Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":534,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.963214,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ae15dcb2-f22b-4115-b970-ac9b971e8373","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"8d84a59ae1c15452c3ffb5f74b0c4354","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/ae15dcb2-f22b-4115-b970-ac9b971e8373","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213718,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxOH0.oRRYLMtWR1DIufMfThYZWkgGGhCLPv-zX76ODHu1vj4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"8d84a59ae1c15452c3ffb5f74b0c4354","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae15dcb2-f22b-4115-b970-ac9b971e8373","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae15dcb2-f22b-4115-b970-ac9b971e8373","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:17.543485031Z"}]},"request_id":"0faca542-b612-4b33-96ff-8f4445e1a147","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213718.1672394} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8d84a59ae1c15452c3ffb5f74b0c4354","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8d84a59ae1c15452c3ffb5f74b0c4354"} gateway-1 | {"time_local":"17/Jul/2024:10:55:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ae15dcb2-f22b-4115-b970-ac9b971e8373? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8d84a59ae1c15452c3ffb5f74b0c4354"} device-1 | {"level":"info","message":"GET /devices/ae15dcb2-f22b-4115-b970-ac9b971e8373? 200 12ms","method":"GET","requestID":"8d84a59ae1c15452c3ffb5f74b0c4354","responseTime":12,"status":200,"url":"/devices/ae15dcb2-f22b-4115-b970-ac9b971e8373?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxOH0.oRRYLMtWR1DIufMfThYZWkgGGhCLPv-zX76ODHu1vj4","level":"info","message":"auth send jwt","requestID":"06c89c8c06a46ee059dc70316169e516"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"06c89c8c06a46ee059dc70316169e516","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"06c89c8c06a46ee059dc70316169e516"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":535,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:18Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":535,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.720595,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/262cebb5-9ccd-4bbc-996f-2bdedf262389","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"06c89c8c06a46ee059dc70316169e516","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/262cebb5-9ccd-4bbc-996f-2bdedf262389","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213718,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxOH0.oRRYLMtWR1DIufMfThYZWkgGGhCLPv-zX76ODHu1vj4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"06c89c8c06a46ee059dc70316169e516","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F262cebb5-9ccd-4bbc-996f-2bdedf262389","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F262cebb5-9ccd-4bbc-996f-2bdedf262389","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:17.594963370Z"}]},"request_id":"214bc6bc-da93-43d8-b3af-47ec187b870c","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213718.1846123} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"06c89c8c06a46ee059dc70316169e516","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"06c89c8c06a46ee059dc70316169e516"} gateway-1 | {"time_local":"17/Jul/2024:10:55:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/262cebb5-9ccd-4bbc-996f-2bdedf262389? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"06c89c8c06a46ee059dc70316169e516"} device-1 | {"level":"info","message":"GET /devices/262cebb5-9ccd-4bbc-996f-2bdedf262389? 200 10ms","method":"GET","requestID":"06c89c8c06a46ee059dc70316169e516","responseTime":10,"status":200,"url":"/devices/262cebb5-9ccd-4bbc-996f-2bdedf262389?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxOH0.oRRYLMtWR1DIufMfThYZWkgGGhCLPv-zX76ODHu1vj4","level":"info","message":"auth send jwt","requestID":"f18ba18152525000ee11274fb6b55530"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f18ba18152525000ee11274fb6b55530","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"f18ba18152525000ee11274fb6b55530"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":536,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:18Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":536,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.286768,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:18Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f18ba18152525000ee11274fb6b55530","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213718,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxOH0.oRRYLMtWR1DIufMfThYZWkgGGhCLPv-zX76ODHu1vj4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f18ba18152525000ee11274fb6b55530","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/334411ab-a757-4829-a4dd-0fb0fca792f7"},"level":"info","message":"Attempting to run experiment","requestID":"f18ba18152525000ee11274fb6b55530"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/334411ab-a757-4829-a4dd-0fb0fca792f7"},"level":"info","message":"Attempting to book experiment","requestID":"f18ba18152525000ee11274fb6b55530"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/334411ab-a757-4829-a4dd-0fb0fca792f7"},"level":"info","message":"Successfully booked experiment","requestID":"f18ba18152525000ee11274fb6b55530"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0e13dd00-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0e140410-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":537,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:18Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":537,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.665229,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:18Z"} authorization-1 | {"client_addr":"127.0.0.1:42078","level":"info","msg":"Received request.","req_id":538,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ae15dcb2-f22b-4115-b970-ac9b971e8373","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0e13dd00-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/ae15dcb2-f22b-4115-b970-ac9b971e8373","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213718,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxOH0.oRRYLMtWR1DIufMfThYZWkgGGhCLPv-zX76ODHu1vj4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0e13dd00-442b-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:42078","level":"info","msg":"Sent response.","req_id":538,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.784963,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/262cebb5-9ccd-4bbc-996f-2bdedf262389","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0e140410-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/262cebb5-9ccd-4bbc-996f-2bdedf262389","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213718,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxOH0.oRRYLMtWR1DIufMfThYZWkgGGhCLPv-zX76ODHu1vj4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0e140410-442b-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae15dcb2-f22b-4115-b970-ac9b971e8373","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae15dcb2-f22b-4115-b970-ac9b971e8373","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:17.543485031Z"}]},"request_id":"271902f9-8f63-4b1d-8f84-c5491f537f6c","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213718.2327487} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0e13dd00-442b-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F262cebb5-9ccd-4bbc-996f-2bdedf262389","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F262cebb5-9ccd-4bbc-996f-2bdedf262389","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:17.594963370Z"}]},"request_id":"99ecf737-4530-49dc-b4c8-6b307323d713","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213718.2341228} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0e140410-442b-11ef-8685-a1e9f27e6f28","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0e13dd00-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/ae15dcb2-f22b-4115-b970-ac9b971e8373? 200 16ms","method":"GET","requestID":"0e13dd00-442b-11ef-8685-a1e9f27e6f28","responseTime":16,"status":200,"url":"/devices/ae15dcb2-f22b-4115-b970-ac9b971e8373?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0e140410-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/262cebb5-9ccd-4bbc-996f-2bdedf262389? 200 16ms","method":"GET","requestID":"0e140410-442b-11ef-8685-a1e9f27e6f28","responseTime":16,"status":200,"url":"/devices/262cebb5-9ccd-4bbc-996f-2bdedf262389?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/334411ab-a757-4829-a4dd-0fb0fca792f7"},"level":"info","message":"Setting up experiment","requestID":"f18ba18152525000ee11274fb6b55530"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/334411ab-a757-4829-a4dd-0fb0fca792f7"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"f18ba18152525000ee11274fb6b55530"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/334411ab-a757-4829-a4dd-0fb0fca792f7"},"level":"info","message":"Successfully locked booking for experiment","requestID":"f18ba18152525000ee11274fb6b55530"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/334411ab-a757-4829-a4dd-0fb0fca792f7"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"f18ba18152525000ee11274fb6b55530"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/334411ab-a757-4829-a4dd-0fb0fca792f7"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"f18ba18152525000ee11274fb6b55530"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/334411ab-a757-4829-a4dd-0fb0fca792f7"},"level":"info","message":"Attempting to update booking for experiment","requestID":"f18ba18152525000ee11274fb6b55530"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/334411ab-a757-4829-a4dd-0fb0fca792f7"},"level":"info","message":"Successfully updated booking for experiment","requestID":"f18ba18152525000ee11274fb6b55530"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/334411ab-a757-4829-a4dd-0fb0fca792f7"},"level":"info","message":"Successfully set up experiment","requestID":"f18ba18152525000ee11274fb6b55530"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0e1f0090-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0e1f4eb0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0e1fc3e0-442b-11ef-8685-a1e9f27e6f28"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/334411ab-a757-4829-a4dd-0fb0fca792f7"},"level":"info","message":"Successfully running experiment","requestID":"f18ba18152525000ee11274fb6b55530"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":539,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:18Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":539,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.415939,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:18Z"} authorization-1 | {"client_addr":"127.0.0.1:42078","level":"info","msg":"Received request.","req_id":540,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ae15dcb2-f22b-4115-b970-ac9b971e8373","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0e1f0090-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/ae15dcb2-f22b-4115-b970-ac9b971e8373","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213718,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxOH0.oRRYLMtWR1DIufMfThYZWkgGGhCLPv-zX76ODHu1vj4"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"0e1f0090-442b-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:42078","level":"info","msg":"Sent response.","req_id":540,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.932319,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/262cebb5-9ccd-4bbc-996f-2bdedf262389","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0e1f4eb0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/262cebb5-9ccd-4bbc-996f-2bdedf262389","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213718,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxOH0.oRRYLMtWR1DIufMfThYZWkgGGhCLPv-zX76ODHu1vj4"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"0e1f4eb0-442b-11ef-8685-a1e9f27e6f28","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":541,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:18Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae15dcb2-f22b-4115-b970-ac9b971e8373","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c7c8f273-bb7a-4949-88c7-6b6a498978ef","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213718.3119137} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":541,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.688705,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ae15dcb2-f22b-4115-b970-ac9b971e8373","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0e1fc3e0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ae15dcb2-f22b-4115-b970-ac9b971e8373","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"0e1fc3e0-442b-11ef-8685-a1e9f27e6f28","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae15dcb2-f22b-4115-b970-ac9b971e8373","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae15dcb2-f22b-4115-b970-ac9b971e8373","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:17.543485031Z"}]},"request_id":"3cb6565f-a061-472b-ae13-7016b99bb20a","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213718.3164592} authorization-1 | {"level":"info","message":"POST /relations/query 200 11ms","method":"POST","requestID":"0e1f0090-442b-11ef-8685-a1e9f27e6f28","responseTime":11,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F262cebb5-9ccd-4bbc-996f-2bdedf262389","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F262cebb5-9ccd-4bbc-996f-2bdedf262389","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:17.594963370Z"}]},"request_id":"ddd78c5b-dbc6-4a64-9254-6a7daba3636e","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213718.3221478} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"0e1f4eb0-442b-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0e1fc3e0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/ae15dcb2-f22b-4115-b970-ac9b971e8373/signaling 200 26ms","method":"POST","requestID":"0e1fc3e0-442b-11ef-8685-a1e9f27e6f28","responseTime":26,"status":200,"url":"/devices/ae15dcb2-f22b-4115-b970-ac9b971e8373/signaling"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F334411ab-a757-4829-a4dd-0fb0fca792f7#owner@http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F334411ab-a757-4829-a4dd-0fb0fca792f7","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"6eddf85e-c05c-4a96-864e-1436deb47b43","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213718.331776} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0e2430b0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9a9d4652-6da4-4b71-adb2-256c5090b375","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213718.332217} authorization-1 | {"level":"info","message":"POST /relations/update 200 26ms","method":"POST","requestID":"f18ba18152525000ee11274fb6b55530","responseTime":26,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0e1f0090-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/ae15dcb2-f22b-4115-b970-ac9b971e8373? 200 38ms","method":"GET","requestID":"0e1f0090-442b-11ef-8685-a1e9f27e6f28","responseTime":38,"status":200,"url":"/devices/ae15dcb2-f22b-4115-b970-ac9b971e8373?"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":542,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:18Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0e1f4eb0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/262cebb5-9ccd-4bbc-996f-2bdedf262389? 200 37ms","method":"GET","requestID":"0e1f4eb0-442b-11ef-8685-a1e9f27e6f28","responseTime":37,"status":200,"url":"/devices/262cebb5-9ccd-4bbc-996f-2bdedf262389?"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F262cebb5-9ccd-4bbc-996f-2bdedf262389","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5585eeab-5e25-44e0-aa7d-adea18748954","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213718.3378043} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":542,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.129307,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/262cebb5-9ccd-4bbc-996f-2bdedf262389","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0e2430b0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/262cebb5-9ccd-4bbc-996f-2bdedf262389","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0e2430b0-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0e259040-442b-11ef-8685-a1e9f27e6f28"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/334411ab-a757-4829-a4dd-0fb0fca792f7","user":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"f18ba18152525000ee11274fb6b55530"} gateway-1 | {"time_local":"17/Jul/2024:10:55:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1295","request_time":"0.155","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f18ba18152525000ee11274fb6b55530"} experiment-1 | {"level":"info","message":"POST /experiments? 201 151ms","method":"POST","requestID":"f18ba18152525000ee11274fb6b55530","responseTime":151,"status":201,"url":"/experiments?"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":543,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:18Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0e2430b0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/262cebb5-9ccd-4bbc-996f-2bdedf262389/signaling 200 15ms","method":"POST","requestID":"0e2430b0-442b-11ef-8685-a1e9f27e6f28","responseTime":15,"status":200,"url":"/devices/262cebb5-9ccd-4bbc-996f-2bdedf262389/signaling"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae15dcb2-f22b-4115-b970-ac9b971e8373","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a7627244-bc1e-4c96-96f9-dd9837c66458","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213718.3465276} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":543,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.733288,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ae15dcb2-f22b-4115-b970-ac9b971e8373","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0e259040-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ae15dcb2-f22b-4115-b970-ac9b971e8373","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxOH0.oRRYLMtWR1DIufMfThYZWkgGGhCLPv-zX76ODHu1vj4","level":"info","message":"auth send jwt","requestID":"47e12ba0017f7f82415bf5a43aae22c0"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"0e259040-442b-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"47e12ba0017f7f82415bf5a43aae22c0","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"47e12ba0017f7f82415bf5a43aae22c0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0e259040-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/ae15dcb2-f22b-4115-b970-ac9b971e8373/signaling 200 13ms","method":"POST","requestID":"0e259040-442b-11ef-8685-a1e9f27e6f28","responseTime":13,"status":200,"url":"/devices/ae15dcb2-f22b-4115-b970-ac9b971e8373/signaling"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":544,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:18Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":544,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.866102,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ae15dcb2-f22b-4115-b970-ac9b971e8373","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"47e12ba0017f7f82415bf5a43aae22c0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/ae15dcb2-f22b-4115-b970-ac9b971e8373","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213718,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxOH0.oRRYLMtWR1DIufMfThYZWkgGGhCLPv-zX76ODHu1vj4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"47e12ba0017f7f82415bf5a43aae22c0","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0e280140-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":545,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:18Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae15dcb2-f22b-4115-b970-ac9b971e8373","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae15dcb2-f22b-4115-b970-ac9b971e8373","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:17.543485031Z"}]},"request_id":"c8060a4c-231b-46bc-9112-8bff1d598dcd","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213718.3605833} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"47e12ba0017f7f82415bf5a43aae22c0","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F262cebb5-9ccd-4bbc-996f-2bdedf262389","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b7a97054-e265-4c95-b1c1-4f851482ea19","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213718.3610497} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":545,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.417388,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/262cebb5-9ccd-4bbc-996f-2bdedf262389","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0e280140-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/262cebb5-9ccd-4bbc-996f-2bdedf262389","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0e280140-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"47e12ba0017f7f82415bf5a43aae22c0"} gateway-1 | {"time_local":"17/Jul/2024:10:55:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ae15dcb2-f22b-4115-b970-ac9b971e8373? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"47e12ba0017f7f82415bf5a43aae22c0"} device-1 | {"level":"info","message":"GET /devices/ae15dcb2-f22b-4115-b970-ac9b971e8373? 200 15ms","method":"GET","requestID":"47e12ba0017f7f82415bf5a43aae22c0","responseTime":15,"status":200,"url":"/devices/ae15dcb2-f22b-4115-b970-ac9b971e8373?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0e280140-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/262cebb5-9ccd-4bbc-996f-2bdedf262389/signaling 200 11ms","method":"POST","requestID":"0e280140-442b-11ef-8685-a1e9f27e6f28","responseTime":11,"status":200,"url":"/devices/262cebb5-9ccd-4bbc-996f-2bdedf262389/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/334411ab-a757-4829-a4dd-0fb0fca792f7"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"f18ba18152525000ee11274fb6b55530"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/334411ab-a757-4829-a4dd-0fb0fca792f7"},"level":"info","message":"Building connection plan","requestID":"f18ba18152525000ee11274fb6b55530"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"834b4676-b442-41c7-a00c-dedba876beb1"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"a58f1159-c80f-44d7-a9c1-f8e94abd72a3"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"b03d119e-66d1-418d-96e4-1e5c01ef5543"}]},"level":"info","message":"Built pairwise service configurations","requestID":"f18ba18152525000ee11274fb6b55530"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/ae15dcb2-f22b-4115-b970-ac9b971e8373"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/262cebb5-9ccd-4bbc-996f-2bdedf262389"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"f18ba18152525000ee11274fb6b55530"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"0e29fd10-442b-11ef-8685-a1e9f27e6f28"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxOH0.oRRYLMtWR1DIufMfThYZWkgGGhCLPv-zX76ODHu1vj4","level":"info","message":"auth send jwt","requestID":"c895b0ad4a165ff4acc0704dba2530f7"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c895b0ad4a165ff4acc0704dba2530f7","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":546,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:18Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":546,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.838068,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:18Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0e29fd10-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213718,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxOH0.oRRYLMtWR1DIufMfThYZWkgGGhCLPv-zX76ODHu1vj4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0e29fd10-442b-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c895b0ad4a165ff4acc0704dba2530f7"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":547,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:18Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":547,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.81942,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/262cebb5-9ccd-4bbc-996f-2bdedf262389","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"c895b0ad4a165ff4acc0704dba2530f7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/262cebb5-9ccd-4bbc-996f-2bdedf262389","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213718,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcxOH0.oRRYLMtWR1DIufMfThYZWkgGGhCLPv-zX76ODHu1vj4"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"c895b0ad4a165ff4acc0704dba2530f7","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3dc97503-e2b0-4bfc-9142-b3450694f5e8","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213718.3882926} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"fe9d9356-60e3-4264-a5e4-077cd0dcb141","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213718.3887026} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"0e29fd10-442b-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F262cebb5-9ccd-4bbc-996f-2bdedf262389","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F262cebb5-9ccd-4bbc-996f-2bdedf262389","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:17.594963370Z"}]},"request_id":"b6f926a2-04b1-4f2a-9c91-9da244e13009","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213718.3900192} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c895b0ad4a165ff4acc0704dba2530f7","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c895b0ad4a165ff4acc0704dba2530f7"} gateway-1 | {"time_local":"17/Jul/2024:10:55:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/262cebb5-9ccd-4bbc-996f-2bdedf262389? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.028","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c895b0ad4a165ff4acc0704dba2530f7"} device-1 | {"level":"info","message":"GET /devices/262cebb5-9ccd-4bbc-996f-2bdedf262389? 200 19ms","method":"GET","requestID":"c895b0ad4a165ff4acc0704dba2530f7","responseTime":19,"status":200,"url":"/devices/262cebb5-9ccd-4bbc-996f-2bdedf262389?"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"0e29fd10-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"0e29fd10-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/9fb4ca39-1cbc-4807-afdc-006921c3537b'","requestID":"0e29fd10-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/9fb4ca39-1cbc-4807-afdc-006921c3537b'","requestID":"0e29fd10-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"0e29fd10-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 34ms","method":"POST","requestID":"0e29fd10-442b-11ef-8685-a1e9f27e6f28","responseTime":34,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"0e29fd10-442b-11ef-8685-a1e9f27e6f28"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/334411ab-a757-4829-a4dd-0fb0fca792f7"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"f18ba18152525000ee11274fb6b55530"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0e334be0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":548,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:18Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae15dcb2-f22b-4115-b970-ac9b971e8373","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a82fcd8b-d836-4f3b-b54b-758efed8a9f1","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213718.4352896} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":548,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.432764,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ae15dcb2-f22b-4115-b970-ac9b971e8373","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0e334be0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ae15dcb2-f22b-4115-b970-ac9b971e8373","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0e334be0-442b-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0e334be0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/ae15dcb2-f22b-4115-b970-ac9b971e8373/signaling 200 9ms","method":"POST","requestID":"0e334be0-442b-11ef-8685-a1e9f27e6f28","responseTime":9,"status":200,"url":"/devices/ae15dcb2-f22b-4115-b970-ac9b971e8373/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0e34f990-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":549,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:18Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F262cebb5-9ccd-4bbc-996f-2bdedf262389","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7771c5f2-ae62-4828-b2f9-bc172ec3b0c7","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213718.4455621} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":549,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.695463,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/262cebb5-9ccd-4bbc-996f-2bdedf262389","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0e34f990-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/262cebb5-9ccd-4bbc-996f-2bdedf262389","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0e34f990-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0e34f990-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/262cebb5-9ccd-4bbc-996f-2bdedf262389/signaling 200 8ms","method":"POST","requestID":"0e34f990-442b-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/devices/262cebb5-9ccd-4bbc-996f-2bdedf262389/signaling"} device-1 | {"device":"262cebb5-9ccd-4bbc-996f-2bdedf262389","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"9fb4ca39-1cbc-4807-afdc-006921c3537b","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"ae15dcb2-f22b-4115-b970-ac9b971e8373","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"9fb4ca39-1cbc-4807-afdc-006921c3537b","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"ae15dcb2-f22b-4115-b970-ac9b971e8373","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"ae15dcb2-f22b-4115-b970-ac9b971e8373","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"ae15dcb2-f22b-4115-b970-ac9b971e8373","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"ae15dcb2-f22b-4115-b970-ac9b971e8373","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/9fb4ca39-1cbc-4807-afdc-006921c3537b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"9fb4ca39-1cbc-4807-afdc-006921c3537b","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a237bd24254acf5d1ecb6c06f77ba23a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"a237bd24254acf5d1ecb6c06f77ba23a","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/ae15dcb2-f22b-4115-b970-ac9b971e8373"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/262cebb5-9ccd-4bbc-996f-2bdedf262389"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/9fb4ca39-1cbc-4807-afdc-006921c3537b"}}},"level":"info","message":"received a callback","requestID":"a237bd24254acf5d1ecb6c06f77ba23a"} device-1 | {"device":"262cebb5-9ccd-4bbc-996f-2bdedf262389","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"262cebb5-9ccd-4bbc-996f-2bdedf262389","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"262cebb5-9ccd-4bbc-996f-2bdedf262389","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"a237bd24254acf5d1ecb6c06f77ba23a","responseTime":7,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:55:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.010","http_referrer":"","http_user_agent":"node-fetch","requestID":"a237bd24254acf5d1ecb6c06f77ba23a"} device-1 | {"data":{"peerconnection":"9fb4ca39-1cbc-4807-afdc-006921c3537b","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"ae15dcb2-f22b-4115-b970-ac9b971e8373","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"262cebb5-9ccd-4bbc-996f-2bdedf262389","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"262cebb5-9ccd-4bbc-996f-2bdedf262389","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"ae15dcb2-f22b-4115-b970-ac9b971e8373","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"9fb4ca39-1cbc-4807-afdc-006921c3537b","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/9fb4ca39-1cbc-4807-afdc-006921c3537b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"9fb4ca39-1cbc-4807-afdc-006921c3537b","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"41857fae506b26790ad2e00ef95f4abf","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"41857fae506b26790ad2e00ef95f4abf","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/ae15dcb2-f22b-4115-b970-ac9b971e8373"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/262cebb5-9ccd-4bbc-996f-2bdedf262389"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/9fb4ca39-1cbc-4807-afdc-006921c3537b"}}},"level":"info","message":"received a callback","requestID":"41857fae506b26790ad2e00ef95f4abf"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"0f72a9b0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":550,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:20Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F9fb4ca39-1cbc-4807-afdc-006921c3537b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"327ff966-5324-4dd5-a3a4-5408cddcdd68","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213720.5298645} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":550,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.13333,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/9fb4ca39-1cbc-4807-afdc-006921c3537b","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0f72a9b0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/9fb4ca39-1cbc-4807-afdc-006921c3537b","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0f72a9b0-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"0f72a9b0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /peerconnections/9fb4ca39-1cbc-4807-afdc-006921c3537b 200 11ms","method":"GET","requestID":"0f72a9b0-442b-11ef-8685-a1e9f27e6f28","responseTime":11,"status":200,"url":"/peerconnections/9fb4ca39-1cbc-4807-afdc-006921c3537b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 44ms","method":"POST","requestID":"41857fae506b26790ad2e00ef95f4abf","responseTime":44,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:55:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch","requestID":"41857fae506b26790ad2e00ef95f4abf"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0f789d20-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":551,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:20Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae15dcb2-f22b-4115-b970-ac9b971e8373","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ccb4b6df-abd9-4101-85bb-d271e078370e","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213720.5682483} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":551,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.579343,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ae15dcb2-f22b-4115-b970-ac9b971e8373","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0f789d20-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ae15dcb2-f22b-4115-b970-ac9b971e8373","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0f789d20-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0f789d20-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/ae15dcb2-f22b-4115-b970-ac9b971e8373/signaling 200 12ms","method":"POST","requestID":"0f789d20-442b-11ef-8685-a1e9f27e6f28","responseTime":12,"status":200,"url":"/devices/ae15dcb2-f22b-4115-b970-ac9b971e8373/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0f7ae710-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":552,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:20Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F262cebb5-9ccd-4bbc-996f-2bdedf262389","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c57c3861-0001-494e-921d-d85ce316d22f","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213720.5843062} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":552,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.881027,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/262cebb5-9ccd-4bbc-996f-2bdedf262389","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0f7ae710-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/262cebb5-9ccd-4bbc-996f-2bdedf262389","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"0f7ae710-442b-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0f7ae710-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/262cebb5-9ccd-4bbc-996f-2bdedf262389/signaling 200 14ms","method":"POST","requestID":"0f7ae710-442b-11ef-8685-a1e9f27e6f28","responseTime":14,"status":200,"url":"/devices/262cebb5-9ccd-4bbc-996f-2bdedf262389/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyMH0.atFeq3QNB5Wuvre2okzUyU3MX9O8v4D99xJgwTdbmF8","level":"info","message":"auth send jwt","requestID":"f4c9c6db972033be2af7676d03ab8b1c"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"f4c9c6db972033be2af7676d03ab8b1c","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/334411ab-a757-4829-a4dd-0fb0fca792f7","requestID":"f4c9c6db972033be2af7676d03ab8b1c"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":553,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:20Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":553,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.221442,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/334411ab-a757-4829-a4dd-0fb0fca792f7","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f4c9c6db972033be2af7676d03ab8b1c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:http://localhost/experiments/334411ab-a757-4829-a4dd-0fb0fca792f7","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213720,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyMH0.atFeq3QNB5Wuvre2okzUyU3MX9O8v4D99xJgwTdbmF8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f4c9c6db972033be2af7676d03ab8b1c","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/334411ab-a757-4829-a4dd-0fb0fca792f7","requestID":"f4c9c6db972033be2af7676d03ab8b1c"} experiment-1 | {"level":"info","message":"GET /experiments/334411ab-a757-4829-a4dd-0fb0fca792f7 200 15ms","method":"GET","requestID":"f4c9c6db972033be2af7676d03ab8b1c","responseTime":15,"status":200,"url":"/experiments/334411ab-a757-4829-a4dd-0fb0fca792f7"} gateway-1 | {"time_local":"17/Jul/2024:10:55:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/334411ab-a757-4829-a4dd-0fb0fca792f7 HTTP/1.1","status": "200","body_bytes_sent":"1368","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f4c9c6db972033be2af7676d03ab8b1c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyMH0.atFeq3QNB5Wuvre2okzUyU3MX9O8v4D99xJgwTdbmF8","level":"info","message":"auth send jwt","requestID":"b538471f72d9cebd4bb0081f9f421d43"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b538471f72d9cebd4bb0081f9f421d43","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/334411ab-a757-4829-a4dd-0fb0fca792f7","requestID":"b538471f72d9cebd4bb0081f9f421d43"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":554,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:20Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":554,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.841614,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:20Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/334411ab-a757-4829-a4dd-0fb0fca792f7","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"b538471f72d9cebd4bb0081f9f421d43","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:http://localhost/experiments/334411ab-a757-4829-a4dd-0fb0fca792f7","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213720,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyMH0.atFeq3QNB5Wuvre2okzUyU3MX9O8v4D99xJgwTdbmF8"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"b538471f72d9cebd4bb0081f9f421d43","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/334411ab-a757-4829-a4dd-0fb0fca792f7"},"level":"info","message":"Attempting to finish experiment","requestID":"b538471f72d9cebd4bb0081f9f421d43"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"0f86a6e0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":555,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:20Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":555,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.306862,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:20Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/9fb4ca39-1cbc-4807-afdc-006921c3537b","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0f86a6e0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"peerconnection:http://localhost/peerconnections/9fb4ca39-1cbc-4807-afdc-006921c3537b","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213720,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyMH0.atFeq3QNB5Wuvre2okzUyU3MX9O8v4D99xJgwTdbmF8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0f86a6e0-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"device":"ae15dcb2-f22b-4115-b970-ac9b971e8373","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"ae15dcb2-f22b-4115-b970-ac9b971e8373","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"ae15dcb2-f22b-4115-b970-ac9b971e8373","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"262cebb5-9ccd-4bbc-996f-2bdedf262389","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"262cebb5-9ccd-4bbc-996f-2bdedf262389","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"262cebb5-9ccd-4bbc-996f-2bdedf262389","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/9fb4ca39-1cbc-4807-afdc-006921c3537b' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/9fb4ca39-1cbc-4807-afdc-006921c3537b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"9fb4ca39-1cbc-4807-afdc-006921c3537b","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F9fb4ca39-1cbc-4807-afdc-006921c3537b': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F9fb4ca39-1cbc-4807-afdc-006921c3537b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]},"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":null},"raw_response":{},"request_id":"806973a4-6f9e-45f5-9566-d66af76f6405","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213720.6859334} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"54dcd32081fcddc6f91a57b58858d697","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"54dcd32081fcddc6f91a57b58858d697","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"090ae7a5-7201-4aba-9059-c158fccc778b","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213720.686593} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a1b3f3bbdcf5db89ff7c6ba716ba4dcb","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"a1b3f3bbdcf5db89ff7c6ba716ba4dcb","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/ae15dcb2-f22b-4115-b970-ac9b971e8373"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/262cebb5-9ccd-4bbc-996f-2bdedf262389"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/9fb4ca39-1cbc-4807-afdc-006921c3537b"}}},"level":"info","message":"received a callback","requestID":"54dcd32081fcddc6f91a57b58858d697"} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"0f86a6e0-442b-11ef-8685-a1e9f27e6f28","responseTime":13,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/ae15dcb2-f22b-4115-b970-ac9b971e8373"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/262cebb5-9ccd-4bbc-996f-2bdedf262389"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/9fb4ca39-1cbc-4807-afdc-006921c3537b"}}},"level":"info","message":"received a callback","requestID":"a1b3f3bbdcf5db89ff7c6ba716ba4dcb"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"0f86a6e0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"DELETE /peerconnections/9fb4ca39-1cbc-4807-afdc-006921c3537b 204 52ms","method":"DELETE","requestID":"0f86a6e0-442b-11ef-8685-a1e9f27e6f28","responseTime":52,"status":204,"url":"/peerconnections/9fb4ca39-1cbc-4807-afdc-006921c3537b"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/262cebb5-9ccd-4bbc-996f-2bdedf262389'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/334411ab-a757-4829-a4dd-0fb0fca792f7"},"level":"info","message":"Successfully finished experiment","requestID":"b538471f72d9cebd4bb0081f9f421d43"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0f91f180-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":556,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:20Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fae15dcb2-f22b-4115-b970-ac9b971e8373","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6e21a937-6285-4d86-ad18-8c9f912b4c3c","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213720.7343106} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":556,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.983542,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ae15dcb2-f22b-4115-b970-ac9b971e8373","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0f91f180-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ae15dcb2-f22b-4115-b970-ac9b971e8373","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"0f91f180-442b-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F334411ab-a757-4829-a4dd-0fb0fca792f7': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F334411ab-a757-4829-a4dd-0fb0fca792f7","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]},"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":null},"raw_response":{},"request_id":"4d7eb01a-1977-458d-889a-15d184dd8e24","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213720.7365153} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9b0ca9e3-c1c9-49a1-86c9-34d324e6c9f6","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213720.7369149} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"b538471f72d9cebd4bb0081f9f421d43","responseTime":12,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0f91f180-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/ae15dcb2-f22b-4115-b970-ac9b971e8373/signaling 200 13ms","method":"POST","requestID":"0f91f180-442b-11ef-8685-a1e9f27e6f28","responseTime":13,"status":200,"url":"/devices/ae15dcb2-f22b-4115-b970-ac9b971e8373/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"0f943b70-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":557,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:20Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F262cebb5-9ccd-4bbc-996f-2bdedf262389","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f3441dab-e5df-4a16-8e4c-070fa8d7dea9","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213720.7485054} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":557,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.701769,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/262cebb5-9ccd-4bbc-996f-2bdedf262389","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0f943b70-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/262cebb5-9ccd-4bbc-996f-2bdedf262389","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0f943b70-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"0f943b70-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/262cebb5-9ccd-4bbc-996f-2bdedf262389/signaling 200 10ms","method":"POST","requestID":"0f943b70-442b-11ef-8685-a1e9f27e6f28","responseTime":10,"status":200,"url":"/devices/262cebb5-9ccd-4bbc-996f-2bdedf262389/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/334411ab-a757-4829-a4dd-0fb0fca792f7","requestID":"b538471f72d9cebd4bb0081f9f421d43"} gateway-1 | {"time_local":"17/Jul/2024:10:55:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/334411ab-a757-4829-a4dd-0fb0fca792f7 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.169","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b538471f72d9cebd4bb0081f9f421d43"} gateway-1 | {"time_local":"17/Jul/2024:10:55:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2747","request_time":"2.675","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"2975e1d20b519e555bf6a27f86d727e0"} gateway-1 | {"time_local":"17/Jul/2024:10:55:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2745","request_time":"2.666","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"0d32c65e7cc9a3ec03f348cd4aa3a351"} experiment-1 | {"level":"info","message":"DELETE /experiments/334411ab-a757-4829-a4dd-0fb0fca792f7 204 165ms","method":"DELETE","requestID":"b538471f72d9cebd4bb0081f9f421d43","responseTime":165,"status":204,"url":"/experiments/334411ab-a757-4829-a4dd-0fb0fca792f7"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 116ms","method":"POST","requestID":"54dcd32081fcddc6f91a57b58858d697","responseTime":116,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:55:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.120","http_referrer":"","http_user_agent":"node-fetch","requestID":"54dcd32081fcddc6f91a57b58858d697"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 115ms","method":"POST","requestID":"a1b3f3bbdcf5db89ff7c6ba716ba4dcb","responseTime":115,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:55:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.121","http_referrer":"","http_user_agent":"node-fetch","requestID":"a1b3f3bbdcf5db89ff7c6ba716ba4dcb"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyMH0.atFeq3QNB5Wuvre2okzUyU3MX9O8v4D99xJgwTdbmF8","level":"info","message":"auth send jwt","requestID":"cdbdc3f4435bffc42e5a6b7c663b40c9"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"cdbdc3f4435bffc42e5a6b7c663b40c9","responseTime":4,"status":200,"url":"/auth"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/262cebb5-9ccd-4bbc-996f-2bdedf262389' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"cdbdc3f4435bffc42e5a6b7c663b40c9"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":558,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:20Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":558,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.854925,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:20Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"cdbdc3f4435bffc42e5a6b7c663b40c9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213720,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyMH0.atFeq3QNB5Wuvre2okzUyU3MX9O8v4D99xJgwTdbmF8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"cdbdc3f4435bffc42e5a6b7c663b40c9","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/ae15dcb2-f22b-4115-b970-ac9b971e8373' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F23227afe-aded-4725-a31f-646de2d53172","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"944c847a-390f-4301-a4c5-49c60f8b5ec6","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213720.8376968} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"cdbdc3f4435bffc42e5a6b7c663b40c9","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"02e7ae4b-e08a-4110-bbbe-442914a65f67","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213720.8442457} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"cdbdc3f4435bffc42e5a6b7c663b40c9","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F23227afe-aded-4725-a31f-646de2d53172","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"7a4bdfe7-68e8-4b8a-83b7-9c36802358c9","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213720.8549917} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"db5f60d6-5c92-4384-8a8a-9e634ab1b7af","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213720.8552628} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"cdbdc3f4435bffc42e5a6b7c663b40c9","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F23227afe-aded-4725-a31f-646de2d53172","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F23227afe-aded-4725-a31f-646de2d53172","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:20.854965444Z"}]},"request_id":"05698b87-4e0d-4768-86cc-39d32b16a83a","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213720.860099} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"cdbdc3f4435bffc42e5a6b7c663b40c9","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"cdbdc3f4435bffc42e5a6b7c663b40c9"} gateway-1 | {"time_local":"17/Jul/2024:10:55:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.060","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"cdbdc3f4435bffc42e5a6b7c663b40c9"} device-1 | {"level":"info","message":"POST /devices? 201 52ms","method":"POST","requestID":"cdbdc3f4435bffc42e5a6b7c663b40c9","responseTime":52,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyMH0.atFeq3QNB5Wuvre2okzUyU3MX9O8v4D99xJgwTdbmF8","level":"info","message":"auth send jwt","requestID":"7ef7bb2bd04aba3a577e815270d159de"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"7ef7bb2bd04aba3a577e815270d159de","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"7ef7bb2bd04aba3a577e815270d159de"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":559,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:20Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":559,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.111589,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:20Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"7ef7bb2bd04aba3a577e815270d159de","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213720,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyMH0.atFeq3QNB5Wuvre2okzUyU3MX9O8v4D99xJgwTdbmF8"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"7ef7bb2bd04aba3a577e815270d159de","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37abb89b-3c86-4eca-8738-04642f101ab0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"32b60026-f4b9-4686-aea1-385dbbccbc8f","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213720.898543} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7ef7bb2bd04aba3a577e815270d159de","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"953b96c5-ffff-48f2-9ef6-6d6cfe41f567","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213720.9049687} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"7ef7bb2bd04aba3a577e815270d159de","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37abb89b-3c86-4eca-8738-04642f101ab0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"5062d644-b5e9-45a8-aa73-ac5bd90c56d5","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213720.920621} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0effed45-e58b-4285-9d42-165a8ec3c72a","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213720.9208922} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"7ef7bb2bd04aba3a577e815270d159de","responseTime":18,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37abb89b-3c86-4eca-8738-04642f101ab0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37abb89b-3c86-4eca-8738-04642f101ab0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:20.920593698Z"}]},"request_id":"863707ce-3a51-4b5d-a3de-5dd490f1cfd8","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213720.9248245} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"7ef7bb2bd04aba3a577e815270d159de","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"7ef7bb2bd04aba3a577e815270d159de"} gateway-1 | {"time_local":"17/Jul/2024:10:55:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.063","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7ef7bb2bd04aba3a577e815270d159de"} device-1 | {"level":"info","message":"POST /devices? 201 59ms","method":"POST","requestID":"7ef7bb2bd04aba3a577e815270d159de","responseTime":59,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"21f545d1d4d7afd34d1552e5833a62c8","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"21f545d1d4d7afd34d1552e5833a62c8","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"17/Jul/2024:10:55:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/37abb89b-3c86-4eca-8738-04642f101ab0/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"21f545d1d4d7afd34d1552e5833a62c8"} device-1 | {"level":"info","message":"OPTIONS /devices/37abb89b-3c86-4eca-8738-04642f101ab0/websocket 200 1ms","method":"OPTIONS","requestID":"21f545d1d4d7afd34d1552e5833a62c8","responseTime":1,"status":200,"url":"/devices/37abb89b-3c86-4eca-8738-04642f101ab0/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyMn0.p7geicZlySQZJC_MqXcVMODaEQvmG8PKG0E7PxirVvM","level":"info","message":"auth send jwt","requestID":"0027bf9d87ff70da23ae903898ca1d91"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0027bf9d87ff70da23ae903898ca1d91","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"0027bf9d87ff70da23ae903898ca1d91"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":560,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:22Z"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b94c32c1ee44ed3da6748377a52ba9c5","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":560,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.086892,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:22Z"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"b94c32c1ee44ed3da6748377a52ba9c5","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/37abb89b-3c86-4eca-8738-04642f101ab0","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0027bf9d87ff70da23ae903898ca1d91","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/37abb89b-3c86-4eca-8738-04642f101ab0","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213722,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyMn0.p7geicZlySQZJC_MqXcVMODaEQvmG8PKG0E7PxirVvM"} gateway-1 | {"time_local":"17/Jul/2024:10:55:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/23227afe-aded-4725-a31f-646de2d53172/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.005","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"b94c32c1ee44ed3da6748377a52ba9c5"} device-1 | {"level":"info","message":"OPTIONS /devices/23227afe-aded-4725-a31f-646de2d53172/websocket 200 1ms","method":"OPTIONS","requestID":"b94c32c1ee44ed3da6748377a52ba9c5","responseTime":1,"status":200,"url":"/devices/23227afe-aded-4725-a31f-646de2d53172/websocket"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0027bf9d87ff70da23ae903898ca1d91","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyMn0.p7geicZlySQZJC_MqXcVMODaEQvmG8PKG0E7PxirVvM","level":"info","message":"auth send jwt","requestID":"c4cdf002954160721d462cb62d3bec4a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c4cdf002954160721d462cb62d3bec4a","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"c4cdf002954160721d462cb62d3bec4a"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":561,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:22Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":561,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.264234,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:22Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/23227afe-aded-4725-a31f-646de2d53172","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"c4cdf002954160721d462cb62d3bec4a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/23227afe-aded-4725-a31f-646de2d53172","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213722,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyMn0.p7geicZlySQZJC_MqXcVMODaEQvmG8PKG0E7PxirVvM"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"0027bf9d87ff70da23ae903898ca1d91"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c4cdf002954160721d462cb62d3bec4a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"POST /devices/37abb89b-3c86-4eca-8738-04642f101ab0/websocket 200 25ms","method":"POST","requestID":"0027bf9d87ff70da23ae903898ca1d91","responseTime":25,"status":200,"url":"/devices/37abb89b-3c86-4eca-8738-04642f101ab0/websocket"} gateway-1 | {"time_local":"17/Jul/2024:10:55:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/37abb89b-3c86-4eca-8738-04642f101ab0/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.031","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"0027bf9d87ff70da23ae903898ca1d91"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"c4cdf002954160721d462cb62d3bec4a"} gateway-1 | {"time_local":"17/Jul/2024:10:55:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/23227afe-aded-4725-a31f-646de2d53172/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.026","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"c4cdf002954160721d462cb62d3bec4a"} device-1 | {"level":"info","message":"POST /devices/23227afe-aded-4725-a31f-646de2d53172/websocket 200 21ms","method":"POST","requestID":"c4cdf002954160721d462cb62d3bec4a","responseTime":21,"status":200,"url":"/devices/23227afe-aded-4725-a31f-646de2d53172/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/37abb89b-3c86-4eca-8738-04642f101ab0' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/23227afe-aded-4725-a31f-646de2d53172' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyMn0.p7geicZlySQZJC_MqXcVMODaEQvmG8PKG0E7PxirVvM","level":"info","message":"auth send jwt","requestID":"0fc98e69d712b69525ba911cf709676a"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"0fc98e69d712b69525ba911cf709676a","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0fc98e69d712b69525ba911cf709676a"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":562,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:22Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":562,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.082257,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/23227afe-aded-4725-a31f-646de2d53172","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0fc98e69d712b69525ba911cf709676a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/23227afe-aded-4725-a31f-646de2d53172","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213722,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyMn0.p7geicZlySQZJC_MqXcVMODaEQvmG8PKG0E7PxirVvM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0fc98e69d712b69525ba911cf709676a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F23227afe-aded-4725-a31f-646de2d53172","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F23227afe-aded-4725-a31f-646de2d53172","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:20.854965444Z"}]},"request_id":"51a1aa5a-c8fc-4b87-9ae9-b7fdc9c7c22f","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213722.9363854} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0fc98e69d712b69525ba911cf709676a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0fc98e69d712b69525ba911cf709676a"} device-1 | {"level":"info","message":"GET /devices/23227afe-aded-4725-a31f-646de2d53172? 200 15ms","method":"GET","requestID":"0fc98e69d712b69525ba911cf709676a","responseTime":15,"status":200,"url":"/devices/23227afe-aded-4725-a31f-646de2d53172?"} gateway-1 | {"time_local":"17/Jul/2024:10:55:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/23227afe-aded-4725-a31f-646de2d53172? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0fc98e69d712b69525ba911cf709676a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyMn0.p7geicZlySQZJC_MqXcVMODaEQvmG8PKG0E7PxirVvM","level":"info","message":"auth send jwt","requestID":"0f6299fdf8621c61ee59df4adc102d71"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0f6299fdf8621c61ee59df4adc102d71","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0f6299fdf8621c61ee59df4adc102d71"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":563,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:22Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":563,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.946055,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/37abb89b-3c86-4eca-8738-04642f101ab0","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0f6299fdf8621c61ee59df4adc102d71","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/37abb89b-3c86-4eca-8738-04642f101ab0","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213722,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyMn0.p7geicZlySQZJC_MqXcVMODaEQvmG8PKG0E7PxirVvM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0f6299fdf8621c61ee59df4adc102d71","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37abb89b-3c86-4eca-8738-04642f101ab0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37abb89b-3c86-4eca-8738-04642f101ab0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:20.920593698Z"}]},"request_id":"d18ddbaa-e26a-42f6-8d90-f0d88cc80d95","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213722.9586358} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0f6299fdf8621c61ee59df4adc102d71","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0f6299fdf8621c61ee59df4adc102d71"} gateway-1 | {"time_local":"17/Jul/2024:10:55:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/37abb89b-3c86-4eca-8738-04642f101ab0? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0f6299fdf8621c61ee59df4adc102d71"} device-1 | {"level":"info","message":"GET /devices/37abb89b-3c86-4eca-8738-04642f101ab0? 200 16ms","method":"GET","requestID":"0f6299fdf8621c61ee59df4adc102d71","responseTime":16,"status":200,"url":"/devices/37abb89b-3c86-4eca-8738-04642f101ab0?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyMn0.p7geicZlySQZJC_MqXcVMODaEQvmG8PKG0E7PxirVvM","level":"info","message":"auth send jwt","requestID":"1a24c25f8d84461df4190d405b3bef27"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1a24c25f8d84461df4190d405b3bef27","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"1a24c25f8d84461df4190d405b3bef27"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":564,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:22Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":564,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.766418,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:22Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1a24c25f8d84461df4190d405b3bef27","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213722,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyMn0.p7geicZlySQZJC_MqXcVMODaEQvmG8PKG0E7PxirVvM"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"1a24c25f8d84461df4190d405b3bef27","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/361643fa-015e-4f9e-aee0-abf4ede3b03f"},"level":"info","message":"Attempting to run experiment","requestID":"1a24c25f8d84461df4190d405b3bef27"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/361643fa-015e-4f9e-aee0-abf4ede3b03f"},"level":"info","message":"Attempting to book experiment","requestID":"1a24c25f8d84461df4190d405b3bef27"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/361643fa-015e-4f9e-aee0-abf4ede3b03f"},"level":"info","message":"Successfully booked experiment","requestID":"1a24c25f8d84461df4190d405b3bef27"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"10eee970-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"10ef3790-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":565,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:23Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":565,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.617784,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/23227afe-aded-4725-a31f-646de2d53172","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"10eee970-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/23227afe-aded-4725-a31f-646de2d53172","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213722,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyMn0.p7geicZlySQZJC_MqXcVMODaEQvmG8PKG0E7PxirVvM"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"10eee970-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51506","level":"info","msg":"Received request.","req_id":566,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:23Z"} authorization-1 | {"client_addr":"127.0.0.1:51506","level":"info","msg":"Sent response.","req_id":566,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.146441,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/37abb89b-3c86-4eca-8738-04642f101ab0","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"10ef3790-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/37abb89b-3c86-4eca-8738-04642f101ab0","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213722,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyMn0.p7geicZlySQZJC_MqXcVMODaEQvmG8PKG0E7PxirVvM"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"10ef3790-442b-11ef-8685-a1e9f27e6f28","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F23227afe-aded-4725-a31f-646de2d53172","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F23227afe-aded-4725-a31f-646de2d53172","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:20.854965444Z"}]},"request_id":"54c87584-8cc1-4f52-b626-f5fa1f1fd6be","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213723.0282023} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"10eee970-442b-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37abb89b-3c86-4eca-8738-04642f101ab0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37abb89b-3c86-4eca-8738-04642f101ab0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:20.920593698Z"}]},"request_id":"95ac743b-f939-45f3-a65c-848f4c9939b6","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213723.0327854} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"10eee970-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"10ef3790-442b-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/23227afe-aded-4725-a31f-646de2d53172? 200 19ms","method":"GET","requestID":"10eee970-442b-11ef-8685-a1e9f27e6f28","responseTime":19,"status":200,"url":"/devices/23227afe-aded-4725-a31f-646de2d53172?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"10ef3790-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/37abb89b-3c86-4eca-8738-04642f101ab0? 200 19ms","method":"GET","requestID":"10ef3790-442b-11ef-8685-a1e9f27e6f28","responseTime":19,"status":200,"url":"/devices/37abb89b-3c86-4eca-8738-04642f101ab0?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/361643fa-015e-4f9e-aee0-abf4ede3b03f"},"level":"info","message":"Setting up experiment","requestID":"1a24c25f8d84461df4190d405b3bef27"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/361643fa-015e-4f9e-aee0-abf4ede3b03f"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"1a24c25f8d84461df4190d405b3bef27"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/361643fa-015e-4f9e-aee0-abf4ede3b03f"},"level":"info","message":"Successfully locked booking for experiment","requestID":"1a24c25f8d84461df4190d405b3bef27"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/361643fa-015e-4f9e-aee0-abf4ede3b03f"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"1a24c25f8d84461df4190d405b3bef27"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/361643fa-015e-4f9e-aee0-abf4ede3b03f"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"1a24c25f8d84461df4190d405b3bef27"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/361643fa-015e-4f9e-aee0-abf4ede3b03f"},"level":"info","message":"Attempting to update booking for experiment","requestID":"1a24c25f8d84461df4190d405b3bef27"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/361643fa-015e-4f9e-aee0-abf4ede3b03f"},"level":"info","message":"Successfully updated booking for experiment","requestID":"1a24c25f8d84461df4190d405b3bef27"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/361643fa-015e-4f9e-aee0-abf4ede3b03f"},"level":"info","message":"Successfully set up experiment","requestID":"1a24c25f8d84461df4190d405b3bef27"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"10f9bee0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"10fa0d00-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":567,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:23Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/361643fa-015e-4f9e-aee0-abf4ede3b03f"},"level":"info","message":"Successfully running experiment","requestID":"1a24c25f8d84461df4190d405b3bef27"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"10fa8230-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":567,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.979987,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/23227afe-aded-4725-a31f-646de2d53172","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"10f9bee0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/23227afe-aded-4725-a31f-646de2d53172","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213722,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyMn0.p7geicZlySQZJC_MqXcVMODaEQvmG8PKG0E7PxirVvM"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"10f9bee0-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51506","level":"info","msg":"Received request.","req_id":568,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:23Z"} authorization-1 | {"client_addr":"127.0.0.1:51506","level":"info","msg":"Sent response.","req_id":568,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.047839,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/37abb89b-3c86-4eca-8738-04642f101ab0","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"10fa0d00-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/37abb89b-3c86-4eca-8738-04642f101ab0","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213722,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyMn0.p7geicZlySQZJC_MqXcVMODaEQvmG8PKG0E7PxirVvM"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"10fa0d00-442b-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":569,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:23Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37abb89b-3c86-4eca-8738-04642f101ab0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37abb89b-3c86-4eca-8738-04642f101ab0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:20.920593698Z"}]},"request_id":"a664a6b4-376e-4da8-8996-26b6cec24634","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213723.1002305} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F23227afe-aded-4725-a31f-646de2d53172","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8f444de7-ffd4-41f7-b333-cd3b78ac2fe5","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213723.1004503} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"10fa0d00-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F23227afe-aded-4725-a31f-646de2d53172","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F23227afe-aded-4725-a31f-646de2d53172","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:20.854965444Z"}]},"request_id":"92006cda-3958-47d0-9239-a9a667aaf5ff","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213723.101948} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":569,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.119429,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/23227afe-aded-4725-a31f-646de2d53172","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"10fa8230-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/23227afe-aded-4725-a31f-646de2d53172","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"10fa8230-442b-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"10f9bee0-442b-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"10fa0d00-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/37abb89b-3c86-4eca-8738-04642f101ab0? 200 23ms","method":"GET","requestID":"10fa0d00-442b-11ef-8685-a1e9f27e6f28","responseTime":23,"status":200,"url":"/devices/37abb89b-3c86-4eca-8738-04642f101ab0?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"10fa8230-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/23227afe-aded-4725-a31f-646de2d53172/signaling 200 21ms","method":"POST","requestID":"10fa8230-442b-11ef-8685-a1e9f27e6f28","responseTime":21,"status":200,"url":"/devices/23227afe-aded-4725-a31f-646de2d53172/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"10f9bee0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/23227afe-aded-4725-a31f-646de2d53172? 200 28ms","method":"GET","requestID":"10f9bee0-442b-11ef-8685-a1e9f27e6f28","responseTime":28,"status":200,"url":"/devices/23227afe-aded-4725-a31f-646de2d53172?"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F361643fa-015e-4f9e-aee0-abf4ede3b03f#owner@http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F361643fa-015e-4f9e-aee0-abf4ede3b03f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"177a7700-42f2-498d-9677-deae6d72a285","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213723.113044} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"10fe2bb0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"14c04447-5834-4a6e-8060-76e87eb8fc97","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213723.115934} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"10fe79d0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"level":"info","message":"POST /relations/update 200 25ms","method":"POST","requestID":"1a24c25f8d84461df4190d405b3bef27","responseTime":25,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":570,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:23Z"} authorization-1 | {"client_addr":"127.0.0.1:51506","level":"info","msg":"Received request.","req_id":571,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:23Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37abb89b-3c86-4eca-8738-04642f101ab0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"04a5fdd6-f4f5-4f55-a345-8157958190ba","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213723.1208587} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":570,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.426254,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/37abb89b-3c86-4eca-8738-04642f101ab0","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"10fe2bb0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/37abb89b-3c86-4eca-8738-04642f101ab0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"10fe2bb0-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F23227afe-aded-4725-a31f-646de2d53172","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7f0c8d2c-7af2-46ed-9713-c96efdc0deb5","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213723.1229537} authorization-1 | {"client_addr":"127.0.0.1:51506","level":"info","msg":"Sent response.","req_id":571,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.794884,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/23227afe-aded-4725-a31f-646de2d53172","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"10fe79d0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/23227afe-aded-4725-a31f-646de2d53172","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"10fe79d0-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"10fe2bb0-442b-11ef-8685-a1e9f27e6f28"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/361643fa-015e-4f9e-aee0-abf4ede3b03f","user":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"1a24c25f8d84461df4190d405b3bef27"} device-1 | {"level":"info","message":"POST /devices/37abb89b-3c86-4eca-8738-04642f101ab0/signaling 200 11ms","method":"POST","requestID":"10fe2bb0-442b-11ef-8685-a1e9f27e6f28","responseTime":11,"status":200,"url":"/devices/37abb89b-3c86-4eca-8738-04642f101ab0/signaling"} experiment-1 | {"level":"info","message":"POST /experiments? 201 155ms","method":"POST","requestID":"1a24c25f8d84461df4190d405b3bef27","responseTime":155,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"17/Jul/2024:10:55:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1211","request_time":"0.161","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1a24c25f8d84461df4190d405b3bef27"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"10fe79d0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/23227afe-aded-4725-a31f-646de2d53172/signaling 200 11ms","method":"POST","requestID":"10fe79d0-442b-11ef-8685-a1e9f27e6f28","responseTime":11,"status":200,"url":"/devices/23227afe-aded-4725-a31f-646de2d53172/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"110075a0-442b-11ef-8685-a1e9f27e6f28"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyM30._oQv5YHtYWCVeHgA-jTf-OOY50NZ51G_QKgevOlBRxI","level":"info","message":"auth send jwt","requestID":"a98bf1ab37fb5419d58859b9b2dacc3b"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"a98bf1ab37fb5419d58859b9b2dacc3b","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a98bf1ab37fb5419d58859b9b2dacc3b"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":572,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:23Z"} authorization-1 | {"client_addr":"127.0.0.1:51506","level":"info","msg":"Received request.","req_id":573,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:23Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37abb89b-3c86-4eca-8738-04642f101ab0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"832a83c0-287d-47d2-bd1d-c98d4ecedfdc","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213723.1353486} authorization-1 | {"client_addr":"127.0.0.1:51506","level":"info","msg":"Sent response.","req_id":573,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.864791,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/23227afe-aded-4725-a31f-646de2d53172","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"a98bf1ab37fb5419d58859b9b2dacc3b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/23227afe-aded-4725-a31f-646de2d53172","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213723,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyM30._oQv5YHtYWCVeHgA-jTf-OOY50NZ51G_QKgevOlBRxI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a98bf1ab37fb5419d58859b9b2dacc3b","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":572,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.781318,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/37abb89b-3c86-4eca-8738-04642f101ab0","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"110075a0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/37abb89b-3c86-4eca-8738-04642f101ab0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"110075a0-442b-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F23227afe-aded-4725-a31f-646de2d53172","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F23227afe-aded-4725-a31f-646de2d53172","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:20.854965444Z"}]},"request_id":"06aa0ff2-9cc1-4473-b974-98d542098e43","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213723.1408827} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"110075a0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/37abb89b-3c86-4eca-8738-04642f101ab0/signaling 200 11ms","method":"POST","requestID":"110075a0-442b-11ef-8685-a1e9f27e6f28","responseTime":11,"status":200,"url":"/devices/37abb89b-3c86-4eca-8738-04642f101ab0/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a98bf1ab37fb5419d58859b9b2dacc3b","responseTime":4,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/361643fa-015e-4f9e-aee0-abf4ede3b03f"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"1a24c25f8d84461df4190d405b3bef27"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/361643fa-015e-4f9e-aee0-abf4ede3b03f"},"level":"info","message":"Building connection plan","requestID":"1a24c25f8d84461df4190d405b3bef27"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"64fadfe1-a17a-4058-9cd9-bb14f7936ad4"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"d3e1e3f3-da95-4617-87ee-3ad3b6d8d1e4"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"90e86972-9705-4cb7-8788-9f8d798057de"}]},"level":"info","message":"Built pairwise service configurations","requestID":"1a24c25f8d84461df4190d405b3bef27"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/37abb89b-3c86-4eca-8738-04642f101ab0"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/23227afe-aded-4725-a31f-646de2d53172"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"1a24c25f8d84461df4190d405b3bef27"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"11029880-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a98bf1ab37fb5419d58859b9b2dacc3b"} gateway-1 | {"time_local":"17/Jul/2024:10:55:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/23227afe-aded-4725-a31f-646de2d53172? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a98bf1ab37fb5419d58859b9b2dacc3b"} device-1 | {"level":"info","message":"GET /devices/23227afe-aded-4725-a31f-646de2d53172? 200 14ms","method":"GET","requestID":"a98bf1ab37fb5419d58859b9b2dacc3b","responseTime":14,"status":200,"url":"/devices/23227afe-aded-4725-a31f-646de2d53172?"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":574,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:23Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":574,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.780238,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:23Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"11029880-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213722,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyMn0.p7geicZlySQZJC_MqXcVMODaEQvmG8PKG0E7PxirVvM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"11029880-442b-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyM30._oQv5YHtYWCVeHgA-jTf-OOY50NZ51G_QKgevOlBRxI","level":"info","message":"auth send jwt","requestID":"ecfadee56dfa764e6e2105ca1c825afd"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ecfadee56dfa764e6e2105ca1c825afd","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ecfadee56dfa764e6e2105ca1c825afd"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"a02a63be-d853-4a08-8e25-5f3c1ffc1f4d","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213723.1566324} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0cfdc75f-1e9d-4613-a5a0-887035a95677","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213723.156822} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":575,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:23Z"} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"11029880-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":575,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.643859,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/37abb89b-3c86-4eca-8738-04642f101ab0","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"ecfadee56dfa764e6e2105ca1c825afd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/37abb89b-3c86-4eca-8738-04642f101ab0","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213723,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyM30._oQv5YHtYWCVeHgA-jTf-OOY50NZ51G_QKgevOlBRxI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ecfadee56dfa764e6e2105ca1c825afd","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37abb89b-3c86-4eca-8738-04642f101ab0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37abb89b-3c86-4eca-8738-04642f101ab0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:20.920593698Z"}]},"request_id":"eba96da5-46b1-4ea5-8b76-72a679f56dc4","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213723.164744} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ecfadee56dfa764e6e2105ca1c825afd","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"11029880-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"11029880-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/a54201b6-3559-41b2-8c3a-360c15e0a6ea'","requestID":"11029880-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/a54201b6-3559-41b2-8c3a-360c15e0a6ea'","requestID":"11029880-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"11029880-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 30ms","method":"POST","requestID":"11029880-442b-11ef-8685-a1e9f27e6f28","responseTime":30,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ecfadee56dfa764e6e2105ca1c825afd"} gateway-1 | {"time_local":"17/Jul/2024:10:55:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/37abb89b-3c86-4eca-8738-04642f101ab0? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ecfadee56dfa764e6e2105ca1c825afd"} device-1 | {"level":"info","message":"GET /devices/37abb89b-3c86-4eca-8738-04642f101ab0? 200 22ms","method":"GET","requestID":"ecfadee56dfa764e6e2105ca1c825afd","responseTime":22,"status":200,"url":"/devices/37abb89b-3c86-4eca-8738-04642f101ab0?"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"11029880-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/a54201b6-3559-41b2-8c3a-360c15e0a6ea","device":"23227afe-aded-4725-a31f-646de2d53172","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":true} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/a54201b6-3559-41b2-8c3a-360c15e0a6ea","device":"37abb89b-3c86-4eca-8738-04642f101ab0","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":false} device-1 | {"device":"37abb89b-3c86-4eca-8738-04642f101ab0","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"37abb89b-3c86-4eca-8738-04642f101ab0","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/361643fa-015e-4f9e-aee0-abf4ede3b03f"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"1a24c25f8d84461df4190d405b3bef27"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"110ea670-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"device":"23227afe-aded-4725-a31f-646de2d53172","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"23227afe-aded-4725-a31f-646de2d53172","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":576,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:23Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F23227afe-aded-4725-a31f-646de2d53172","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fbce1a03-1d71-47ed-8a56-141a7ca78d60","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213723.2284045} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":576,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.711732,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/23227afe-aded-4725-a31f-646de2d53172","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"110ea670-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/23227afe-aded-4725-a31f-646de2d53172","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"110ea670-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"content":{"sdp":"v=0\r\no=- 7753919055290333396 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:zBfn\r\na=ice-pwd:30HUzVesvXW5boEjdEw0F7ID\r\na=ice-options:trickle\r\na=fingerprint:sha-256 8F:C4:80:AE:24:36:C4:74:83:B6:19:EC:B6:A5:06:7E:B2:4B:65:41:27:35:3A:83:1D:E7:3E:BB:2C:EC:73:BB\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"23227afe-aded-4725-a31f-646de2d53172","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"110ea670-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/23227afe-aded-4725-a31f-646de2d53172/signaling 200 10ms","method":"POST","requestID":"110ea670-442b-11ef-8685-a1e9f27e6f28","responseTime":10,"status":200,"url":"/devices/23227afe-aded-4725-a31f-646de2d53172/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1110a240-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":577,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:23Z"} device-1 | {"content":{"sdp":"v=0\r\no=- 4501348469936326679 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:YHha\r\na=ice-pwd:i3E/9IrYaPfKdJXLKr+3Kad1\r\na=ice-options:trickle\r\na=fingerprint:sha-256 5F:01:80:F4:74:4C:DB:FE:8C:34:40:72:5B:88:5A:2C:36:07:9F:16:8E:40:DD:70:29:7E:88:6C:B2:65:78:BD\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"37abb89b-3c86-4eca-8738-04642f101ab0","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37abb89b-3c86-4eca-8738-04642f101ab0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5e7a7955-04c4-419a-9654-cfab48689469","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213723.2416198} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":577,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.692066,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/37abb89b-3c86-4eca-8738-04642f101ab0","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1110a240-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/37abb89b-3c86-4eca-8738-04642f101ab0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1110a240-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"content":{"candidate":"candidate:3379483314 1 udp 2113937151 fff01d98-f3f9-443b-ac6c-8e860637a8c6.local 47579 typ host generation 0 ufrag YHha network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"37abb89b-3c86-4eca-8738-04642f101ab0","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1296283853 1 udp 1677729535 141.24.211.56 47579 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag YHha network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"37abb89b-3c86-4eca-8738-04642f101ab0","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/37abb89b-3c86-4eca-8738-04642f101ab0'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/37abb89b-3c86-4eca-8738-04642f101ab0'"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1110a240-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/37abb89b-3c86-4eca-8738-04642f101ab0/signaling 200 13ms","method":"POST","requestID":"1110a240-442b-11ef-8685-a1e9f27e6f28","responseTime":13,"status":200,"url":"/devices/37abb89b-3c86-4eca-8738-04642f101ab0/signaling"} device-1 | {"content":{"candidate":"candidate:786744878 1 udp 2113937151 3bdd8e40-5351-4bc6-9740-bc4d17bef32d.local 41288 typ host generation 0 ufrag zBfn network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"23227afe-aded-4725-a31f-646de2d53172","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3184486205 1 udp 1677729535 141.24.211.56 41288 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag zBfn network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"23227afe-aded-4725-a31f-646de2d53172","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/23227afe-aded-4725-a31f-646de2d53172'"} device-1 | {"device":"23227afe-aded-4725-a31f-646de2d53172","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"37abb89b-3c86-4eca-8738-04642f101ab0","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/a54201b6-3559-41b2-8c3a-360c15e0a6ea' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a54201b6-3559-41b2-8c3a-360c15e0a6ea","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"23227afe-aded-4725-a31f-646de2d53172","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"37abb89b-3c86-4eca-8738-04642f101ab0","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"916d4c7150bc21f8a2d419ab7a11c1d3","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"916d4c7150bc21f8a2d419ab7a11c1d3","responseTime":1,"status":200,"url":"/auth"} device-1 | {"device":"23227afe-aded-4725-a31f-646de2d53172","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/37abb89b-3c86-4eca-8738-04642f101ab0"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/23227afe-aded-4725-a31f-646de2d53172"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/a54201b6-3559-41b2-8c3a-360c15e0a6ea"}}},"level":"info","message":"received a callback","requestID":"916d4c7150bc21f8a2d419ab7a11c1d3"} device-1 | {"device":"37abb89b-3c86-4eca-8738-04642f101ab0","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 5ms","method":"POST","requestID":"916d4c7150bc21f8a2d419ab7a11c1d3","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:55:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.007","http_referrer":"","http_user_agent":"node-fetch","requestID":"916d4c7150bc21f8a2d419ab7a11c1d3"} device-1 | {"device":"37abb89b-3c86-4eca-8738-04642f101ab0","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"a54201b6-3559-41b2-8c3a-360c15e0a6ea","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"a54201b6-3559-41b2-8c3a-360c15e0a6ea","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/a54201b6-3559-41b2-8c3a-360c15e0a6ea' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a54201b6-3559-41b2-8c3a-360c15e0a6ea","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a868574ecea2a8610eb666349dbaf2a5","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"a868574ecea2a8610eb666349dbaf2a5","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/37abb89b-3c86-4eca-8738-04642f101ab0"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/23227afe-aded-4725-a31f-646de2d53172"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/a54201b6-3559-41b2-8c3a-360c15e0a6ea"}}},"level":"info","message":"received a callback","requestID":"a868574ecea2a8610eb666349dbaf2a5"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"111a8d50-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":578,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:23Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fa54201b6-3559-41b2-8c3a-360c15e0a6ea","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cc572ca5-0d77-49a6-aeb2-0738274d1d29","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213723.305025} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":578,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.01395,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/a54201b6-3559-41b2-8c3a-360c15e0a6ea","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"111a8d50-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/a54201b6-3559-41b2-8c3a-360c15e0a6ea","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"111a8d50-442b-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"111a8d50-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /peerconnections/a54201b6-3559-41b2-8c3a-360c15e0a6ea 200 7ms","method":"GET","requestID":"111a8d50-442b-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/peerconnections/a54201b6-3559-41b2-8c3a-360c15e0a6ea"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 24ms","method":"POST","requestID":"a868574ecea2a8610eb666349dbaf2a5","responseTime":24,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:55:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch","requestID":"a868574ecea2a8610eb666349dbaf2a5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"111dc1a0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":579,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:23Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37abb89b-3c86-4eca-8738-04642f101ab0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"af451945-cbb4-456f-812f-2915091e9a64","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213723.3261883} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":579,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.133212,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/37abb89b-3c86-4eca-8738-04642f101ab0","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"111dc1a0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/37abb89b-3c86-4eca-8738-04642f101ab0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"111dc1a0-442b-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"111dc1a0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/37abb89b-3c86-4eca-8738-04642f101ab0/signaling 200 8ms","method":"POST","requestID":"111dc1a0-442b-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/devices/37abb89b-3c86-4eca-8738-04642f101ab0/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"111f4840-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":580,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:23Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F23227afe-aded-4725-a31f-646de2d53172","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3d4ae17c-da34-4fc4-ad3f-3c0205874738","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213723.335828} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":580,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.051013,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/23227afe-aded-4725-a31f-646de2d53172","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"111f4840-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/23227afe-aded-4725-a31f-646de2d53172","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"111f4840-442b-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"111f4840-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/23227afe-aded-4725-a31f-646de2d53172/signaling 200 7ms","method":"POST","requestID":"111f4840-442b-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/devices/23227afe-aded-4725-a31f-646de2d53172/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyM30._oQv5YHtYWCVeHgA-jTf-OOY50NZ51G_QKgevOlBRxI","level":"info","message":"auth send jwt","requestID":"76bbb6f760f2866d6cf24656f38f3292"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"76bbb6f760f2866d6cf24656f38f3292","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/361643fa-015e-4f9e-aee0-abf4ede3b03f","requestID":"76bbb6f760f2866d6cf24656f38f3292"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":581,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:23Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":581,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.666778,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/361643fa-015e-4f9e-aee0-abf4ede3b03f","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"76bbb6f760f2866d6cf24656f38f3292","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:http://localhost/experiments/361643fa-015e-4f9e-aee0-abf4ede3b03f","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213723,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyM30._oQv5YHtYWCVeHgA-jTf-OOY50NZ51G_QKgevOlBRxI"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"76bbb6f760f2866d6cf24656f38f3292","responseTime":2,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/361643fa-015e-4f9e-aee0-abf4ede3b03f","requestID":"76bbb6f760f2866d6cf24656f38f3292"} experiment-1 | {"level":"info","message":"GET /experiments/361643fa-015e-4f9e-aee0-abf4ede3b03f 200 11ms","method":"GET","requestID":"76bbb6f760f2866d6cf24656f38f3292","responseTime":11,"status":200,"url":"/experiments/361643fa-015e-4f9e-aee0-abf4ede3b03f"} gateway-1 | {"time_local":"17/Jul/2024:10:55:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/361643fa-015e-4f9e-aee0-abf4ede3b03f HTTP/1.1","status": "200","body_bytes_sent":"1284","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"76bbb6f760f2866d6cf24656f38f3292"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyM30._oQv5YHtYWCVeHgA-jTf-OOY50NZ51G_QKgevOlBRxI","level":"info","message":"auth send jwt","requestID":"4694ed314b4f306ab8ad4bb037b23450"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4694ed314b4f306ab8ad4bb037b23450","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/361643fa-015e-4f9e-aee0-abf4ede3b03f","requestID":"4694ed314b4f306ab8ad4bb037b23450"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":582,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:23Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":582,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.016767,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:23Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/361643fa-015e-4f9e-aee0-abf4ede3b03f","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"4694ed314b4f306ab8ad4bb037b23450","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:http://localhost/experiments/361643fa-015e-4f9e-aee0-abf4ede3b03f","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213723,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyM30._oQv5YHtYWCVeHgA-jTf-OOY50NZ51G_QKgevOlBRxI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4694ed314b4f306ab8ad4bb037b23450","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/361643fa-015e-4f9e-aee0-abf4ede3b03f"},"level":"info","message":"Attempting to finish experiment","requestID":"4694ed314b4f306ab8ad4bb037b23450"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"112ab9f0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":583,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:23Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":583,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.033591,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:23Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/a54201b6-3559-41b2-8c3a-360c15e0a6ea","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"112ab9f0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"peerconnection:http://localhost/peerconnections/a54201b6-3559-41b2-8c3a-360c15e0a6ea","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213723,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyM30._oQv5YHtYWCVeHgA-jTf-OOY50NZ51G_QKgevOlBRxI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"112ab9f0-442b-11ef-8685-a1e9f27e6f28","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/a54201b6-3559-41b2-8c3a-360c15e0a6ea","device":"37abb89b-3c86-4eca-8738-04642f101ab0","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/a54201b6-3559-41b2-8c3a-360c15e0a6ea","device":"23227afe-aded-4725-a31f-646de2d53172","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/a54201b6-3559-41b2-8c3a-360c15e0a6ea' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/a54201b6-3559-41b2-8c3a-360c15e0a6ea' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a54201b6-3559-41b2-8c3a-360c15e0a6ea","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"85caf8f6d4e9f1a7767db11f783db1d0","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"85caf8f6d4e9f1a7767db11f783db1d0","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fa54201b6-3559-41b2-8c3a-360c15e0a6ea': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fa54201b6-3559-41b2-8c3a-360c15e0a6ea","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]},"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":null},"raw_response":{},"request_id":"eafe5e98-247a-4854-8d04-d84bfe7c8eaa","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213723.4275832} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"69644cc2-0469-43ed-9fb2-ed804170cf62","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213723.4279797} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3d1ce5fc195bc6eb7c8e0f6117c8c2ea","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/37abb89b-3c86-4eca-8738-04642f101ab0"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/23227afe-aded-4725-a31f-646de2d53172"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/a54201b6-3559-41b2-8c3a-360c15e0a6ea"}}},"level":"info","message":"received a callback","requestID":"85caf8f6d4e9f1a7767db11f783db1d0"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"3d1ce5fc195bc6eb7c8e0f6117c8c2ea","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/37abb89b-3c86-4eca-8738-04642f101ab0"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/23227afe-aded-4725-a31f-646de2d53172"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/a54201b6-3559-41b2-8c3a-360c15e0a6ea"}}},"level":"info","message":"received a callback","requestID":"3d1ce5fc195bc6eb7c8e0f6117c8c2ea"} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"112ab9f0-442b-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"a54201b6-3559-41b2-8c3a-360c15e0a6ea","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"112ab9f0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"DELETE /peerconnections/a54201b6-3559-41b2-8c3a-360c15e0a6ea 204 38ms","method":"DELETE","requestID":"112ab9f0-442b-11ef-8685-a1e9f27e6f28","responseTime":38,"status":204,"url":"/peerconnections/a54201b6-3559-41b2-8c3a-360c15e0a6ea"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/361643fa-015e-4f9e-aee0-abf4ede3b03f"},"level":"info","message":"Successfully finished experiment","requestID":"4694ed314b4f306ab8ad4bb037b23450"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1132f750-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":584,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:23Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37abb89b-3c86-4eca-8738-04642f101ab0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7c7921ce-8d67-4447-afe5-c0b2365bbe30","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213723.4664626} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":584,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.688091,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/37abb89b-3c86-4eca-8738-04642f101ab0","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1132f750-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/37abb89b-3c86-4eca-8738-04642f101ab0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1132f750-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1132f750-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/37abb89b-3c86-4eca-8738-04642f101ab0/signaling 200 10ms","method":"POST","requestID":"1132f750-442b-11ef-8685-a1e9f27e6f28","responseTime":10,"status":200,"url":"/devices/37abb89b-3c86-4eca-8738-04642f101ab0/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1134cc10-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F361643fa-015e-4f9e-aee0-abf4ede3b03f': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F361643fa-015e-4f9e-aee0-abf4ede3b03f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]},"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":null},"raw_response":{},"request_id":"7f54cfeb-be66-4b98-921f-d81f360d79a8","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213723.4752672} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ac32fd88-e2ab-4f1e-aefd-e42b7769142b","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213723.4755304} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"4694ed314b4f306ab8ad4bb037b23450","responseTime":18,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":585,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:23Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F23227afe-aded-4725-a31f-646de2d53172","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bd8a3979-4451-44fd-bc32-30cfa9e814e9","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213723.4788506} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":585,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.978482,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/23227afe-aded-4725-a31f-646de2d53172","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1134cc10-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/23227afe-aded-4725-a31f-646de2d53172","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1134cc10-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1134cc10-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/23227afe-aded-4725-a31f-646de2d53172/signaling 200 10ms","method":"POST","requestID":"1134cc10-442b-11ef-8685-a1e9f27e6f28","responseTime":10,"status":200,"url":"/devices/23227afe-aded-4725-a31f-646de2d53172/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/361643fa-015e-4f9e-aee0-abf4ede3b03f","requestID":"4694ed314b4f306ab8ad4bb037b23450"} gateway-1 | {"time_local":"17/Jul/2024:10:55:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/361643fa-015e-4f9e-aee0-abf4ede3b03f HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.138","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4694ed314b4f306ab8ad4bb037b23450"} experiment-1 | {"level":"info","message":"DELETE /experiments/361643fa-015e-4f9e-aee0-abf4ede3b03f 204 135ms","method":"DELETE","requestID":"4694ed314b4f306ab8ad4bb037b23450","responseTime":135,"status":204,"url":"/experiments/361643fa-015e-4f9e-aee0-abf4ede3b03f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 105ms","method":"POST","requestID":"85caf8f6d4e9f1a7767db11f783db1d0","responseTime":105,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:55:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.108","http_referrer":"","http_user_agent":"node-fetch","requestID":"85caf8f6d4e9f1a7767db11f783db1d0"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 105ms","method":"POST","requestID":"3d1ce5fc195bc6eb7c8e0f6117c8c2ea","responseTime":105,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:55:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.109","http_referrer":"","http_user_agent":"node-fetch","requestID":"3d1ce5fc195bc6eb7c8e0f6117c8c2ea"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyM30._oQv5YHtYWCVeHgA-jTf-OOY50NZ51G_QKgevOlBRxI","level":"info","message":"auth send jwt","requestID":"b34e508a3c0d5f35b6dbf9f865aaf269"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b34e508a3c0d5f35b6dbf9f865aaf269","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"b34e508a3c0d5f35b6dbf9f865aaf269"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":586,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:23Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":586,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.961231,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:23Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"b34e508a3c0d5f35b6dbf9f865aaf269","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213723,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyM30._oQv5YHtYWCVeHgA-jTf-OOY50NZ51G_QKgevOlBRxI"} gateway-1 | {"time_local":"17/Jul/2024:10:55:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2850","request_time":"0.637","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"cdcf55473dab0f57b3b8aba251309cc7"} gateway-1 | {"time_local":"17/Jul/2024:10:55:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2847","request_time":"0.649","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"0cf1969f52425e2bc4acc38031ecf9e8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b34e508a3c0d5f35b6dbf9f865aaf269","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/23227afe-aded-4725-a31f-646de2d53172' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/37abb89b-3c86-4eca-8738-04642f101ab0' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff61e733a-315b-474d-b20e-abb303530cba","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"412b9e0c-bb2e-41ac-a5b7-62409f153035","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213723.5638156} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b34e508a3c0d5f35b6dbf9f865aaf269","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"49c6b919-6387-420f-8546-5fdce62f1e06","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213723.568522} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"b34e508a3c0d5f35b6dbf9f865aaf269","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff61e733a-315b-474d-b20e-abb303530cba","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"ceb7375e-524c-4010-bb45-38f7969127d2","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213723.5787385} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c5e7125b-510f-4dd3-88ab-04cddb684c8c","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213723.5789428} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"b34e508a3c0d5f35b6dbf9f865aaf269","responseTime":12,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff61e733a-315b-474d-b20e-abb303530cba","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff61e733a-315b-474d-b20e-abb303530cba","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:23.578717627Z"}]},"request_id":"dd790e1d-349b-4ff7-9ee6-83513adfd9cb","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213723.5829308} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"b34e508a3c0d5f35b6dbf9f865aaf269","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"b34e508a3c0d5f35b6dbf9f865aaf269"} device-1 | {"level":"info","message":"POST /devices? 201 49ms","method":"POST","requestID":"b34e508a3c0d5f35b6dbf9f865aaf269","responseTime":49,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"17/Jul/2024:10:55:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.054","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b34e508a3c0d5f35b6dbf9f865aaf269"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyM30._oQv5YHtYWCVeHgA-jTf-OOY50NZ51G_QKgevOlBRxI","level":"info","message":"auth send jwt","requestID":"a827aa14f0b7739e82e01129489a2112"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a827aa14f0b7739e82e01129489a2112","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"a827aa14f0b7739e82e01129489a2112"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":587,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:23Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":587,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.855646,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:23Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"a827aa14f0b7739e82e01129489a2112","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213723,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyM30._oQv5YHtYWCVeHgA-jTf-OOY50NZ51G_QKgevOlBRxI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a827aa14f0b7739e82e01129489a2112","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9412c023-b121-454f-9437-5b590e92d411","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"99e26104-83e1-4b3f-a04b-26827084762c","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213723.6069598} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"a827aa14f0b7739e82e01129489a2112","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"083fc8aa-f313-4d33-9ece-0756e876703f","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213723.6116333} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"a827aa14f0b7739e82e01129489a2112","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9412c023-b121-454f-9437-5b590e92d411","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"5c566b80-4b52-4e49-b73b-3347efcbbde7","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213723.6230764} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5479e313-3f47-4fea-af67-46296b1f2c3f","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213723.623176} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"a827aa14f0b7739e82e01129489a2112","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9412c023-b121-454f-9437-5b590e92d411","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9412c023-b121-454f-9437-5b590e92d411","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:23.623043544Z"}]},"request_id":"0b3e6249-4832-466c-983f-930f4118a332","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213723.6265886} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"a827aa14f0b7739e82e01129489a2112","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"a827aa14f0b7739e82e01129489a2112"} gateway-1 | {"time_local":"17/Jul/2024:10:55:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.042","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a827aa14f0b7739e82e01129489a2112"} device-1 | {"level":"info","message":"POST /devices? 201 37ms","method":"POST","requestID":"a827aa14f0b7739e82e01129489a2112","responseTime":37,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f33ca77581dc7cf1819a19dae9d8536f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"f33ca77581dc7cf1819a19dae9d8536f","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"17/Jul/2024:10:55:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/f61e733a-315b-474d-b20e-abb303530cba/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"f33ca77581dc7cf1819a19dae9d8536f"} device-1 | {"level":"info","message":"OPTIONS /devices/f61e733a-315b-474d-b20e-abb303530cba/websocket 200 1ms","method":"OPTIONS","requestID":"f33ca77581dc7cf1819a19dae9d8536f","responseTime":1,"status":200,"url":"/devices/f61e733a-315b-474d-b20e-abb303530cba/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyNX0.KlZVi4vvj1OTE60xT68sLlngK3orGMzMOwO8QL4I_uM","level":"info","message":"auth send jwt","requestID":"836a4e30d084b8d8581501a32088db74"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"836a4e30d084b8d8581501a32088db74","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"836a4e30d084b8d8581501a32088db74"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":588,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:25Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":588,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.33638,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:25Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f61e733a-315b-474d-b20e-abb303530cba","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"836a4e30d084b8d8581501a32088db74","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/f61e733a-315b-474d-b20e-abb303530cba","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213725,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyNX0.KlZVi4vvj1OTE60xT68sLlngK3orGMzMOwO8QL4I_uM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"836a4e30d084b8d8581501a32088db74","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a1d2acf2533774e401723f491e9f28a5","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 0ms","method":"GET","requestID":"a1d2acf2533774e401723f491e9f28a5","responseTime":0,"status":200,"url":"/auth"} gateway-1 | {"time_local":"17/Jul/2024:10:55:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/9412c023-b121-454f-9437-5b590e92d411/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.002","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"a1d2acf2533774e401723f491e9f28a5"} device-1 | {"level":"info","message":"OPTIONS /devices/9412c023-b121-454f-9437-5b590e92d411/websocket 200 1ms","method":"OPTIONS","requestID":"a1d2acf2533774e401723f491e9f28a5","responseTime":1,"status":200,"url":"/devices/9412c023-b121-454f-9437-5b590e92d411/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"836a4e30d084b8d8581501a32088db74"} gateway-1 | {"time_local":"17/Jul/2024:10:55:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/f61e733a-315b-474d-b20e-abb303530cba/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.027","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"836a4e30d084b8d8581501a32088db74"} device-1 | {"level":"info","message":"POST /devices/f61e733a-315b-474d-b20e-abb303530cba/websocket 200 21ms","method":"POST","requestID":"836a4e30d084b8d8581501a32088db74","responseTime":21,"status":200,"url":"/devices/f61e733a-315b-474d-b20e-abb303530cba/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyNX0.KlZVi4vvj1OTE60xT68sLlngK3orGMzMOwO8QL4I_uM","level":"info","message":"auth send jwt","requestID":"b2a329abb51d5b214504713d2a38e586"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"b2a329abb51d5b214504713d2a38e586","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"b2a329abb51d5b214504713d2a38e586"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":589,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:25Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":589,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.238063,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:25Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9412c023-b121-454f-9437-5b590e92d411","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"b2a329abb51d5b214504713d2a38e586","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/9412c023-b121-454f-9437-5b590e92d411","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213725,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyNX0.KlZVi4vvj1OTE60xT68sLlngK3orGMzMOwO8QL4I_uM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b2a329abb51d5b214504713d2a38e586","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"b2a329abb51d5b214504713d2a38e586"} gateway-1 | {"time_local":"17/Jul/2024:10:55:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/9412c023-b121-454f-9437-5b590e92d411/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.014","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"b2a329abb51d5b214504713d2a38e586"} device-1 | {"level":"info","message":"POST /devices/9412c023-b121-454f-9437-5b590e92d411/websocket 200 10ms","method":"POST","requestID":"b2a329abb51d5b214504713d2a38e586","responseTime":10,"status":200,"url":"/devices/9412c023-b121-454f-9437-5b590e92d411/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/f61e733a-315b-474d-b20e-abb303530cba' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/9412c023-b121-454f-9437-5b590e92d411' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyNX0.KlZVi4vvj1OTE60xT68sLlngK3orGMzMOwO8QL4I_uM","level":"info","message":"auth send jwt","requestID":"4dd1b0a6b0a067f6cdebb8c729f5dcd2"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4dd1b0a6b0a067f6cdebb8c729f5dcd2","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4dd1b0a6b0a067f6cdebb8c729f5dcd2"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":590,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:25Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":590,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.638875,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f61e733a-315b-474d-b20e-abb303530cba","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"4dd1b0a6b0a067f6cdebb8c729f5dcd2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/f61e733a-315b-474d-b20e-abb303530cba","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213725,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyNX0.KlZVi4vvj1OTE60xT68sLlngK3orGMzMOwO8QL4I_uM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4dd1b0a6b0a067f6cdebb8c729f5dcd2","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff61e733a-315b-474d-b20e-abb303530cba","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff61e733a-315b-474d-b20e-abb303530cba","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:23.578717627Z"}]},"request_id":"e7bd4a00-3305-49a6-aa8c-ca3e2989838f","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213725.6539302} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4dd1b0a6b0a067f6cdebb8c729f5dcd2","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4dd1b0a6b0a067f6cdebb8c729f5dcd2"} gateway-1 | {"time_local":"17/Jul/2024:10:55:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f61e733a-315b-474d-b20e-abb303530cba? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4dd1b0a6b0a067f6cdebb8c729f5dcd2"} device-1 | {"level":"info","message":"GET /devices/f61e733a-315b-474d-b20e-abb303530cba? 200 16ms","method":"GET","requestID":"4dd1b0a6b0a067f6cdebb8c729f5dcd2","responseTime":16,"status":200,"url":"/devices/f61e733a-315b-474d-b20e-abb303530cba?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyNX0.KlZVi4vvj1OTE60xT68sLlngK3orGMzMOwO8QL4I_uM","level":"info","message":"auth send jwt","requestID":"32d7ae6b8b5bab70cfd45ece44c81bd6"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"32d7ae6b8b5bab70cfd45ece44c81bd6","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"32d7ae6b8b5bab70cfd45ece44c81bd6"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":591,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:25Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":591,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.227368,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9412c023-b121-454f-9437-5b590e92d411","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"32d7ae6b8b5bab70cfd45ece44c81bd6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/9412c023-b121-454f-9437-5b590e92d411","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213725,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyNX0.KlZVi4vvj1OTE60xT68sLlngK3orGMzMOwO8QL4I_uM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"32d7ae6b8b5bab70cfd45ece44c81bd6","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9412c023-b121-454f-9437-5b590e92d411","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9412c023-b121-454f-9437-5b590e92d411","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:23.623043544Z"}]},"request_id":"d41be6a0-dd7e-437e-ad72-e725a896284d","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213725.6752527} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"32d7ae6b8b5bab70cfd45ece44c81bd6","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"32d7ae6b8b5bab70cfd45ece44c81bd6"} device-1 | {"level":"info","message":"GET /devices/9412c023-b121-454f-9437-5b590e92d411? 200 14ms","method":"GET","requestID":"32d7ae6b8b5bab70cfd45ece44c81bd6","responseTime":14,"status":200,"url":"/devices/9412c023-b121-454f-9437-5b590e92d411?"} gateway-1 | {"time_local":"17/Jul/2024:10:55:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9412c023-b121-454f-9437-5b590e92d411? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"32d7ae6b8b5bab70cfd45ece44c81bd6"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyNX0.KlZVi4vvj1OTE60xT68sLlngK3orGMzMOwO8QL4I_uM","level":"info","message":"auth send jwt","requestID":"bf89392d3f58bafae20474f066e32d05"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"bf89392d3f58bafae20474f066e32d05","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"bf89392d3f58bafae20474f066e32d05"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":592,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:25Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":592,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.668307,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:25Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"bf89392d3f58bafae20474f066e32d05","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213725,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyNX0.KlZVi4vvj1OTE60xT68sLlngK3orGMzMOwO8QL4I_uM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"bf89392d3f58bafae20474f066e32d05","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e4679ab8-9c06-4c3a-97d9-b34487272f23"},"level":"info","message":"Attempting to run experiment","requestID":"bf89392d3f58bafae20474f066e32d05"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e4679ab8-9c06-4c3a-97d9-b34487272f23"},"level":"info","message":"Attempting to book experiment","requestID":"bf89392d3f58bafae20474f066e32d05"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e4679ab8-9c06-4c3a-97d9-b34487272f23"},"level":"info","message":"Successfully booked experiment","requestID":"bf89392d3f58bafae20474f066e32d05"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"128c45c0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"128c6cd0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":593,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:25Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":593,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.896189,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:25Z"} authorization-1 | {"client_addr":"127.0.0.1:51506","level":"info","msg":"Received request.","req_id":594,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f61e733a-315b-474d-b20e-abb303530cba","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"128c45c0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/f61e733a-315b-474d-b20e-abb303530cba","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213725,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyNX0.KlZVi4vvj1OTE60xT68sLlngK3orGMzMOwO8QL4I_uM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"128c45c0-442b-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51506","level":"info","msg":"Sent response.","req_id":594,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.866385,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9412c023-b121-454f-9437-5b590e92d411","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"128c6cd0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/9412c023-b121-454f-9437-5b590e92d411","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213725,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyNX0.KlZVi4vvj1OTE60xT68sLlngK3orGMzMOwO8QL4I_uM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"128c6cd0-442b-11ef-8685-a1e9f27e6f28","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff61e733a-315b-474d-b20e-abb303530cba","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff61e733a-315b-474d-b20e-abb303530cba","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:23.578717627Z"}]},"request_id":"1fc2dda9-1b9a-434d-b487-3a80247dbf9f","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213725.7331567} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"128c45c0-442b-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9412c023-b121-454f-9437-5b590e92d411","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9412c023-b121-454f-9437-5b590e92d411","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:23.623043544Z"}]},"request_id":"2434c278-1562-4da2-9991-36eaaf7f4905","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213725.7345135} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"128c6cd0-442b-11ef-8685-a1e9f27e6f28","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"128c45c0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/f61e733a-315b-474d-b20e-abb303530cba? 200 14ms","method":"GET","requestID":"128c45c0-442b-11ef-8685-a1e9f27e6f28","responseTime":14,"status":200,"url":"/devices/f61e733a-315b-474d-b20e-abb303530cba?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"128c6cd0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/9412c023-b121-454f-9437-5b590e92d411? 200 14ms","method":"GET","requestID":"128c6cd0-442b-11ef-8685-a1e9f27e6f28","responseTime":14,"status":200,"url":"/devices/9412c023-b121-454f-9437-5b590e92d411?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e4679ab8-9c06-4c3a-97d9-b34487272f23"},"level":"info","message":"Setting up experiment","requestID":"bf89392d3f58bafae20474f066e32d05"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e4679ab8-9c06-4c3a-97d9-b34487272f23"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"bf89392d3f58bafae20474f066e32d05"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e4679ab8-9c06-4c3a-97d9-b34487272f23"},"level":"info","message":"Successfully locked booking for experiment","requestID":"bf89392d3f58bafae20474f066e32d05"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e4679ab8-9c06-4c3a-97d9-b34487272f23"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"bf89392d3f58bafae20474f066e32d05"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e4679ab8-9c06-4c3a-97d9-b34487272f23"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"bf89392d3f58bafae20474f066e32d05"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e4679ab8-9c06-4c3a-97d9-b34487272f23"},"level":"info","message":"Attempting to update booking for experiment","requestID":"bf89392d3f58bafae20474f066e32d05"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e4679ab8-9c06-4c3a-97d9-b34487272f23"},"level":"info","message":"Successfully updated booking for experiment","requestID":"bf89392d3f58bafae20474f066e32d05"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e4679ab8-9c06-4c3a-97d9-b34487272f23"},"level":"info","message":"Successfully set up experiment","requestID":"bf89392d3f58bafae20474f066e32d05"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1294aa30-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1294f850-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"12951f60-442b-11ef-8685-a1e9f27e6f28"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e4679ab8-9c06-4c3a-97d9-b34487272f23"},"level":"info","message":"Successfully running experiment","requestID":"bf89392d3f58bafae20474f066e32d05"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":595,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:25Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":595,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.940388,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:25Z"} authorization-1 | {"client_addr":"127.0.0.1:51506","level":"info","msg":"Received request.","req_id":596,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f61e733a-315b-474d-b20e-abb303530cba","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1294aa30-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/f61e733a-315b-474d-b20e-abb303530cba","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213725,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyNX0.KlZVi4vvj1OTE60xT68sLlngK3orGMzMOwO8QL4I_uM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1294aa30-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51506","level":"info","msg":"Sent response.","req_id":596,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.886573,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9412c023-b121-454f-9437-5b590e92d411","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1294f850-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/9412c023-b121-454f-9437-5b590e92d411","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213725,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyNX0.KlZVi4vvj1OTE60xT68sLlngK3orGMzMOwO8QL4I_uM"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"1294f850-442b-11ef-8685-a1e9f27e6f28","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff61e733a-315b-474d-b20e-abb303530cba","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff61e733a-315b-474d-b20e-abb303530cba","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:23.578717627Z"}]},"request_id":"644dbf52-2b11-4bb2-b295-a50c323879df","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213725.7935517} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9412c023-b121-454f-9437-5b590e92d411","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9412c023-b121-454f-9437-5b590e92d411","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:23.623043544Z"}]},"request_id":"e2c7e06d-9208-443a-bcf5-2d7e25f20d79","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213725.7948155} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1294aa30-442b-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51510","level":"info","msg":"Received request.","req_id":597,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:25Z"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1294f850-442b-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff61e733a-315b-474d-b20e-abb303530cba","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a101f21b-d8d5-4b36-9d2f-a0d0de9a80a3","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213725.7971852} authorization-1 | {"client_addr":"127.0.0.1:51510","level":"info","msg":"Sent response.","req_id":597,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.087514,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f61e733a-315b-474d-b20e-abb303530cba","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"12951f60-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f61e733a-315b-474d-b20e-abb303530cba","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"12951f60-442b-11ef-8685-a1e9f27e6f28","responseTime":13,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1294aa30-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/f61e733a-315b-474d-b20e-abb303530cba? 200 22ms","method":"GET","requestID":"1294aa30-442b-11ef-8685-a1e9f27e6f28","responseTime":22,"status":200,"url":"/devices/f61e733a-315b-474d-b20e-abb303530cba?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1294f850-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/9412c023-b121-454f-9437-5b590e92d411? 200 21ms","method":"GET","requestID":"1294f850-442b-11ef-8685-a1e9f27e6f28","responseTime":21,"status":200,"url":"/devices/9412c023-b121-454f-9437-5b590e92d411?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"12951f60-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/f61e733a-315b-474d-b20e-abb303530cba/signaling 200 21ms","method":"POST","requestID":"12951f60-442b-11ef-8685-a1e9f27e6f28","responseTime":21,"status":200,"url":"/devices/f61e733a-315b-474d-b20e-abb303530cba/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"12987ac0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1298c8e0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fe4679ab8-9c06-4c3a-97d9-b34487272f23#owner@http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fe4679ab8-9c06-4c3a-97d9-b34487272f23","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"2cc37fc7-a102-42b6-97aa-d589633dc9f1","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213725.8089845} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3ea33307-45e7-4de4-a933-19f9d7849f37","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213725.8092697} authorization-1 | {"level":"info","message":"POST /relations/update 200 25ms","method":"POST","requestID":"bf89392d3f58bafae20474f066e32d05","responseTime":25,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":598,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:25Z"} authorization-1 | {"client_addr":"127.0.0.1:51506","level":"info","msg":"Received request.","req_id":599,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:25Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff61e733a-315b-474d-b20e-abb303530cba","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bf8411d8-bde8-4e68-972f-95d99477d266","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213725.8126805} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9412c023-b121-454f-9437-5b590e92d411","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"586df062-6135-4338-b90e-0176f64a7803","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213725.8133907} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":598,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.2741,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f61e733a-315b-474d-b20e-abb303530cba","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"12987ac0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f61e733a-315b-474d-b20e-abb303530cba","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"12987ac0-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51506","level":"info","msg":"Sent response.","req_id":599,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.749975,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9412c023-b121-454f-9437-5b590e92d411","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1298c8e0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9412c023-b121-454f-9437-5b590e92d411","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"1298c8e0-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/e4679ab8-9c06-4c3a-97d9-b34487272f23","user":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"bf89392d3f58bafae20474f066e32d05"} gateway-1 | {"time_local":"17/Jul/2024:10:55:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1211","request_time":"0.139","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bf89392d3f58bafae20474f066e32d05"} experiment-1 | {"level":"info","message":"POST /experiments? 201 134ms","method":"POST","requestID":"bf89392d3f58bafae20474f066e32d05","responseTime":134,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"12987ac0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/f61e733a-315b-474d-b20e-abb303530cba/signaling 200 18ms","method":"POST","requestID":"12987ac0-442b-11ef-8685-a1e9f27e6f28","responseTime":18,"status":200,"url":"/devices/f61e733a-315b-474d-b20e-abb303530cba/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1298c8e0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/9412c023-b121-454f-9437-5b590e92d411/signaling 200 17ms","method":"POST","requestID":"1298c8e0-442b-11ef-8685-a1e9f27e6f28","responseTime":17,"status":200,"url":"/devices/9412c023-b121-454f-9437-5b590e92d411/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyNX0.KlZVi4vvj1OTE60xT68sLlngK3orGMzMOwO8QL4I_uM","level":"info","message":"auth send jwt","requestID":"5785f08c9962b9d091af1dc594bb9092"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"5785f08c9962b9d091af1dc594bb9092","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"129b8800-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5785f08c9962b9d091af1dc594bb9092"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":600,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:25Z"} authorization-1 | {"client_addr":"127.0.0.1:51506","level":"info","msg":"Received request.","req_id":601,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:25Z"} authorization-1 | {"client_addr":"127.0.0.1:51506","level":"info","msg":"Sent response.","req_id":601,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.788349,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f61e733a-315b-474d-b20e-abb303530cba","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"5785f08c9962b9d091af1dc594bb9092","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/f61e733a-315b-474d-b20e-abb303530cba","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213725,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyNX0.KlZVi4vvj1OTE60xT68sLlngK3orGMzMOwO8QL4I_uM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"5785f08c9962b9d091af1dc594bb9092","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9412c023-b121-454f-9437-5b590e92d411","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f2bfed95-1898-4967-b332-451a203178d4","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213725.8294725} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":600,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.724897,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9412c023-b121-454f-9437-5b590e92d411","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"129b8800-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9412c023-b121-454f-9437-5b590e92d411","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"129b8800-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff61e733a-315b-474d-b20e-abb303530cba","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff61e733a-315b-474d-b20e-abb303530cba","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:23.578717627Z"}]},"request_id":"21bab949-39db-4e96-91ea-9117ceaa23ef","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213725.833248} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"129b8800-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/9412c023-b121-454f-9437-5b590e92d411/signaling 200 10ms","method":"POST","requestID":"129b8800-442b-11ef-8685-a1e9f27e6f28","responseTime":10,"status":200,"url":"/devices/9412c023-b121-454f-9437-5b590e92d411/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5785f08c9962b9d091af1dc594bb9092","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e4679ab8-9c06-4c3a-97d9-b34487272f23"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"bf89392d3f58bafae20474f066e32d05"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e4679ab8-9c06-4c3a-97d9-b34487272f23"},"level":"info","message":"Building connection plan","requestID":"bf89392d3f58bafae20474f066e32d05"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"1520dcd4-d062-4c5c-a9f7-0c1c17f0a086"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"19020b9f-8577-42d0-be67-e5bea0a99004"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"8485c075-3e07-4ce1-a98e-d5980515bede"}]},"level":"info","message":"Built pairwise service configurations","requestID":"bf89392d3f58bafae20474f066e32d05"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/9412c023-b121-454f-9437-5b590e92d411"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/f61e733a-315b-474d-b20e-abb303530cba"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"bf89392d3f58bafae20474f066e32d05"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5785f08c9962b9d091af1dc594bb9092"} gateway-1 | {"time_local":"17/Jul/2024:10:55:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f61e733a-315b-474d-b20e-abb303530cba? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5785f08c9962b9d091af1dc594bb9092"} device-1 | {"level":"info","message":"GET /devices/f61e733a-315b-474d-b20e-abb303530cba? 200 10ms","method":"GET","requestID":"5785f08c9962b9d091af1dc594bb9092","responseTime":10,"status":200,"url":"/devices/f61e733a-315b-474d-b20e-abb303530cba?"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"129d83d0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":602,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:25Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":602,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.700485,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:25Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyNX0.KlZVi4vvj1OTE60xT68sLlngK3orGMzMOwO8QL4I_uM","level":"info","message":"auth send jwt","requestID":"28a90865660790a3a3d26e55689eb25d"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"28a90865660790a3a3d26e55689eb25d","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"129d83d0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213725,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyNX0.KlZVi4vvj1OTE60xT68sLlngK3orGMzMOwO8QL4I_uM"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"28a90865660790a3a3d26e55689eb25d"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"129d83d0-442b-11ef-8685-a1e9f27e6f28","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":603,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:25Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":603,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.729478,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9412c023-b121-454f-9437-5b590e92d411","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"28a90865660790a3a3d26e55689eb25d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/9412c023-b121-454f-9437-5b590e92d411","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213725,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyNX0.KlZVi4vvj1OTE60xT68sLlngK3orGMzMOwO8QL4I_uM"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"28a90865660790a3a3d26e55689eb25d","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9412c023-b121-454f-9437-5b590e92d411","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9412c023-b121-454f-9437-5b590e92d411","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:23.623043544Z"}]},"request_id":"6d58f2c2-b6e0-4b9f-a4ec-1d9204bd31bc","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213725.8472939} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"28a90865660790a3a3d26e55689eb25d","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"28a90865660790a3a3d26e55689eb25d"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"2ac2d2b3-fb38-4108-b4f7-aab37edac013","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213725.8500516} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"aecddf76-567f-4f5d-9e54-1d61bb22c2dc","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213725.8502164} gateway-1 | {"time_local":"17/Jul/2024:10:55:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9412c023-b121-454f-9437-5b590e92d411? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"28a90865660790a3a3d26e55689eb25d"} device-1 | {"level":"info","message":"GET /devices/9412c023-b121-454f-9437-5b590e92d411? 200 9ms","method":"GET","requestID":"28a90865660790a3a3d26e55689eb25d","responseTime":9,"status":200,"url":"/devices/9412c023-b121-454f-9437-5b590e92d411?"} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"129d83d0-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"129d83d0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"129d83d0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/1e5e7f3d-4fbf-4343-846c-21891a3a7b1a'","requestID":"129d83d0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/1e5e7f3d-4fbf-4343-846c-21891a3a7b1a'","requestID":"129d83d0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"129d83d0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 25ms","method":"POST","requestID":"129d83d0-442b-11ef-8685-a1e9f27e6f28","responseTime":25,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"129d83d0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/1e5e7f3d-4fbf-4343-846c-21891a3a7b1a","device":"f61e733a-315b-474d-b20e-abb303530cba","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":true} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/1e5e7f3d-4fbf-4343-846c-21891a3a7b1a","device":"9412c023-b121-454f-9437-5b590e92d411","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":false} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e4679ab8-9c06-4c3a-97d9-b34487272f23"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"bf89392d3f58bafae20474f066e32d05"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"12a4afc0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":604,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:25Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff61e733a-315b-474d-b20e-abb303530cba","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ff47c1af-8c44-437e-ba44-a613d5049e82","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213725.8887494} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":604,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.242911,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f61e733a-315b-474d-b20e-abb303530cba","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"12a4afc0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f61e733a-315b-474d-b20e-abb303530cba","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"12a4afc0-442b-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"12a4afc0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/f61e733a-315b-474d-b20e-abb303530cba/signaling 200 8ms","method":"POST","requestID":"12a4afc0-442b-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/devices/f61e733a-315b-474d-b20e-abb303530cba/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"12a63660-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":605,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:25Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9412c023-b121-454f-9437-5b590e92d411","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"775575f6-b5da-4bfd-a432-f5f304b530dc","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213725.897937} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":605,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.671961,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9412c023-b121-454f-9437-5b590e92d411","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"12a63660-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9412c023-b121-454f-9437-5b590e92d411","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"12a63660-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"device":"9412c023-b121-454f-9437-5b590e92d411","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"9412c023-b121-454f-9437-5b590e92d411","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"12a63660-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/9412c023-b121-454f-9437-5b590e92d411/signaling 200 9ms","method":"POST","requestID":"12a63660-442b-11ef-8685-a1e9f27e6f28","responseTime":9,"status":200,"url":"/devices/9412c023-b121-454f-9437-5b590e92d411/signaling"} device-1 | {"device":"f61e733a-315b-474d-b20e-abb303530cba","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"f61e733a-315b-474d-b20e-abb303530cba","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 3965439309593905154 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:q9iO\r\na=ice-pwd:9LqyisLwKX7OhkNZDSn4+Sae\r\na=ice-options:trickle\r\na=fingerprint:sha-256 DD:B7:83:AF:04:37:B4:30:49:3A:58:87:B1:E6:63:F8:1E:80:E8:7A:E7:00:16:B0:42:DD:76:C8:18:98:C9:E7\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"f61e733a-315b-474d-b20e-abb303530cba","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 6756887595267264647 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:x+wi\r\na=ice-pwd:TcMAUs87qtW+KXacFbEiphXk\r\na=ice-options:trickle\r\na=fingerprint:sha-256 49:77:72:26:44:05:7E:76:59:8D:7E:DF:5F:0D:52:81:7B:58:C8:2C:3A:A7:07:9D:CA:E9:39:36:6E:11:1A:53\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"9412c023-b121-454f-9437-5b590e92d411","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:1404071130 1 udp 2113937151 823fc262-979f-4f75-8c8c-51ba1500cd35.local 32974 typ host generation 0 ufrag x+wi network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"9412c023-b121-454f-9437-5b590e92d411","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/9412c023-b121-454f-9437-5b590e92d411'"} device-1 | {"content":{"candidate":"candidate:3231436233 1 udp 1677729535 141.24.211.56 32974 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag x+wi network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"9412c023-b121-454f-9437-5b590e92d411","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2709939127 1 udp 2113937151 2950e2db-932b-44d1-8f6e-bcaad9a9c973.local 57987 typ host generation 0 ufrag q9iO network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"f61e733a-315b-474d-b20e-abb303530cba","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:850248356 1 udp 1677729535 141.24.211.56 57987 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag q9iO network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"f61e733a-315b-474d-b20e-abb303530cba","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/9412c023-b121-454f-9437-5b590e92d411'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/f61e733a-315b-474d-b20e-abb303530cba'"} device-1 | {"device":"f61e733a-315b-474d-b20e-abb303530cba","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"9412c023-b121-454f-9437-5b590e92d411","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"f61e733a-315b-474d-b20e-abb303530cba","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/1e5e7f3d-4fbf-4343-846c-21891a3a7b1a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"1e5e7f3d-4fbf-4343-846c-21891a3a7b1a","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"9412c023-b121-454f-9437-5b590e92d411","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c078f57bdd88723f66bb5d3e55accd29","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"c078f57bdd88723f66bb5d3e55accd29","responseTime":1,"status":200,"url":"/auth"} device-1 | {"device":"f61e733a-315b-474d-b20e-abb303530cba","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"9412c023-b121-454f-9437-5b590e92d411","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/9412c023-b121-454f-9437-5b590e92d411"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/f61e733a-315b-474d-b20e-abb303530cba"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/1e5e7f3d-4fbf-4343-846c-21891a3a7b1a"}}},"level":"info","message":"received a callback","requestID":"c078f57bdd88723f66bb5d3e55accd29"} device-1 | {"data":{"peerconnection":"1e5e7f3d-4fbf-4343-846c-21891a3a7b1a","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 8ms","method":"POST","requestID":"c078f57bdd88723f66bb5d3e55accd29","responseTime":8,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:55:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.011","http_referrer":"","http_user_agent":"node-fetch","requestID":"c078f57bdd88723f66bb5d3e55accd29"} device-1 | {"device":"9412c023-b121-454f-9437-5b590e92d411","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"1e5e7f3d-4fbf-4343-846c-21891a3a7b1a","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/1e5e7f3d-4fbf-4343-846c-21891a3a7b1a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"1e5e7f3d-4fbf-4343-846c-21891a3a7b1a","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ec7b4dcbc94e6e7cc060d91c6c63735e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 0ms","method":"GET","requestID":"ec7b4dcbc94e6e7cc060d91c6c63735e","responseTime":0,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/9412c023-b121-454f-9437-5b590e92d411"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/f61e733a-315b-474d-b20e-abb303530cba"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/1e5e7f3d-4fbf-4343-846c-21891a3a7b1a"}}},"level":"info","message":"received a callback","requestID":"ec7b4dcbc94e6e7cc060d91c6c63735e"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"12b355c0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":606,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:25Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F1e5e7f3d-4fbf-4343-846c-21891a3a7b1a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f3c830d1-918e-4e48-95a2-fa0952012444","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213725.9859068} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":606,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.336571,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/1e5e7f3d-4fbf-4343-846c-21891a3a7b1a","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"12b355c0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/1e5e7f3d-4fbf-4343-846c-21891a3a7b1a","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"12b355c0-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"12b355c0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /peerconnections/1e5e7f3d-4fbf-4343-846c-21891a3a7b1a 200 10ms","method":"GET","requestID":"12b355c0-442b-11ef-8685-a1e9f27e6f28","responseTime":10,"status":200,"url":"/peerconnections/1e5e7f3d-4fbf-4343-846c-21891a3a7b1a"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 30ms","method":"POST","requestID":"ec7b4dcbc94e6e7cc060d91c6c63735e","responseTime":30,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:55:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.033","http_referrer":"","http_user_agent":"node-fetch","requestID":"ec7b4dcbc94e6e7cc060d91c6c63735e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"12b77470-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":607,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:26Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9412c023-b121-454f-9437-5b590e92d411","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"65fcfda9-f122-4951-abb3-ee7f3f8a036e","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213726.011745} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":607,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.107911,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9412c023-b121-454f-9437-5b590e92d411","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"12b77470-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9412c023-b121-454f-9437-5b590e92d411","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"12b77470-442b-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"12b77470-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/9412c023-b121-454f-9437-5b590e92d411/signaling 200 8ms","method":"POST","requestID":"12b77470-442b-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/devices/9412c023-b121-454f-9437-5b590e92d411/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"12b8fb10-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":608,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:26Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff61e733a-315b-474d-b20e-abb303530cba","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1f35dff2-e116-44be-9b0d-7f80fd5b82bc","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213726.0206535} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":608,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.151073,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f61e733a-315b-474d-b20e-abb303530cba","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"12b8fb10-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f61e733a-315b-474d-b20e-abb303530cba","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"12b8fb10-442b-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"12b8fb10-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/f61e733a-315b-474d-b20e-abb303530cba/signaling 200 7ms","method":"POST","requestID":"12b8fb10-442b-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/devices/f61e733a-315b-474d-b20e-abb303530cba/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyNn0.FYS5A3m9nNvaCvNMm004h7E_jQsrj3Azr9-S79M8LFE","level":"info","message":"auth send jwt","requestID":"05d6579d69c2052e5b4563e9b31d2392"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"05d6579d69c2052e5b4563e9b31d2392","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/e4679ab8-9c06-4c3a-97d9-b34487272f23","requestID":"05d6579d69c2052e5b4563e9b31d2392"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":609,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:26Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":609,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.216817,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/e4679ab8-9c06-4c3a-97d9-b34487272f23","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"05d6579d69c2052e5b4563e9b31d2392","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:http://localhost/experiments/e4679ab8-9c06-4c3a-97d9-b34487272f23","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213726,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyNn0.FYS5A3m9nNvaCvNMm004h7E_jQsrj3Azr9-S79M8LFE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"05d6579d69c2052e5b4563e9b31d2392","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/e4679ab8-9c06-4c3a-97d9-b34487272f23","requestID":"05d6579d69c2052e5b4563e9b31d2392"} gateway-1 | {"time_local":"17/Jul/2024:10:55:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/e4679ab8-9c06-4c3a-97d9-b34487272f23 HTTP/1.1","status": "200","body_bytes_sent":"1284","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"05d6579d69c2052e5b4563e9b31d2392"} experiment-1 | {"level":"info","message":"GET /experiments/e4679ab8-9c06-4c3a-97d9-b34487272f23 200 15ms","method":"GET","requestID":"05d6579d69c2052e5b4563e9b31d2392","responseTime":15,"status":200,"url":"/experiments/e4679ab8-9c06-4c3a-97d9-b34487272f23"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyNn0.FYS5A3m9nNvaCvNMm004h7E_jQsrj3Azr9-S79M8LFE","level":"info","message":"auth send jwt","requestID":"f4aba492b5f7b41d55be0bd436c0a34f"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"f4aba492b5f7b41d55be0bd436c0a34f","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/e4679ab8-9c06-4c3a-97d9-b34487272f23","requestID":"f4aba492b5f7b41d55be0bd436c0a34f"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":610,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:26Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":610,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.698132,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:26Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/e4679ab8-9c06-4c3a-97d9-b34487272f23","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f4aba492b5f7b41d55be0bd436c0a34f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:http://localhost/experiments/e4679ab8-9c06-4c3a-97d9-b34487272f23","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213726,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyNn0.FYS5A3m9nNvaCvNMm004h7E_jQsrj3Azr9-S79M8LFE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f4aba492b5f7b41d55be0bd436c0a34f","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e4679ab8-9c06-4c3a-97d9-b34487272f23"},"level":"info","message":"Attempting to finish experiment","requestID":"f4aba492b5f7b41d55be0bd436c0a34f"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"12c64180-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":611,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:26Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":611,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.725298,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:26Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/1e5e7f3d-4fbf-4343-846c-21891a3a7b1a","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"12c64180-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"peerconnection:http://localhost/peerconnections/1e5e7f3d-4fbf-4343-846c-21891a3a7b1a","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213726,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyNn0.FYS5A3m9nNvaCvNMm004h7E_jQsrj3Azr9-S79M8LFE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"12c64180-442b-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/1e5e7f3d-4fbf-4343-846c-21891a3a7b1a","device":"9412c023-b121-454f-9437-5b590e92d411","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/1e5e7f3d-4fbf-4343-846c-21891a3a7b1a","device":"f61e733a-315b-474d-b20e-abb303530cba","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/1e5e7f3d-4fbf-4343-846c-21891a3a7b1a' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/1e5e7f3d-4fbf-4343-846c-21891a3a7b1a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"1e5e7f3d-4fbf-4343-846c-21891a3a7b1a","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F1e5e7f3d-4fbf-4343-846c-21891a3a7b1a': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F1e5e7f3d-4fbf-4343-846c-21891a3a7b1a","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]},"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":null},"raw_response":{},"request_id":"e263290b-dc8d-4208-90a8-a59f31990d45","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213726.1246476} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"75b2fa07-ade6-4d0d-9274-115686e52331","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213726.1250782} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c8024e190aa2599b6a935a289c1d7186","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"c8024e190aa2599b6a935a289c1d7186","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/9412c023-b121-454f-9437-5b590e92d411"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/f61e733a-315b-474d-b20e-abb303530cba"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/1e5e7f3d-4fbf-4343-846c-21891a3a7b1a"}}},"level":"info","message":"received a callback","requestID":"c8024e190aa2599b6a935a289c1d7186"} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"12c64180-442b-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6c527d0324dfb93741bac0cee2634e70","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"6c527d0324dfb93741bac0cee2634e70","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/9412c023-b121-454f-9437-5b590e92d411"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/f61e733a-315b-474d-b20e-abb303530cba"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/1e5e7f3d-4fbf-4343-846c-21891a3a7b1a"}}},"level":"info","message":"received a callback","requestID":"6c527d0324dfb93741bac0cee2634e70"} device-1 | {"data":{"peerconnection":"1e5e7f3d-4fbf-4343-846c-21891a3a7b1a","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"12c64180-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"DELETE /peerconnections/1e5e7f3d-4fbf-4343-846c-21891a3a7b1a 204 43ms","method":"DELETE","requestID":"12c64180-442b-11ef-8685-a1e9f27e6f28","responseTime":43,"status":204,"url":"/peerconnections/1e5e7f3d-4fbf-4343-846c-21891a3a7b1a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e4679ab8-9c06-4c3a-97d9-b34487272f23"},"level":"info","message":"Successfully finished experiment","requestID":"f4aba492b5f7b41d55be0bd436c0a34f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"12d053a0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":612,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:26Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9412c023-b121-454f-9437-5b590e92d411","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7baadc8b-e358-44d4-a057-32f4ffde1529","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213726.1763904} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":612,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.210424,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9412c023-b121-454f-9437-5b590e92d411","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"12d053a0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9412c023-b121-454f-9437-5b590e92d411","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"12d053a0-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"12d053a0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/9412c023-b121-454f-9437-5b590e92d411/signaling 200 14ms","method":"POST","requestID":"12d053a0-442b-11ef-8685-a1e9f27e6f28","responseTime":14,"status":200,"url":"/devices/9412c023-b121-454f-9437-5b590e92d411/signaling"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fe4679ab8-9c06-4c3a-97d9-b34487272f23': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fe4679ab8-9c06-4c3a-97d9-b34487272f23","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]},"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":null},"raw_response":{},"request_id":"aa6684cd-430d-47b4-8936-08c0750b741b","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213726.1846228} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a7eaa46b-0aad-458c-8108-57526cd2d0af","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213726.185005} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"12d2c4a0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"f4aba492b5f7b41d55be0bd436c0a34f","responseTime":19,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":613,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:26Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff61e733a-315b-474d-b20e-abb303530cba","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"54fbdb55-bc07-4059-9cd6-627c1c19f2cf","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213726.1916857} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":613,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.185457,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f61e733a-315b-474d-b20e-abb303530cba","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"12d2c4a0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f61e733a-315b-474d-b20e-abb303530cba","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"12d2c4a0-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"12d2c4a0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/f61e733a-315b-474d-b20e-abb303530cba/signaling 200 12ms","method":"POST","requestID":"12d2c4a0-442b-11ef-8685-a1e9f27e6f28","responseTime":12,"status":200,"url":"/devices/f61e733a-315b-474d-b20e-abb303530cba/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/e4679ab8-9c06-4c3a-97d9-b34487272f23","requestID":"f4aba492b5f7b41d55be0bd436c0a34f"} gateway-1 | {"time_local":"17/Jul/2024:10:55:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/e4679ab8-9c06-4c3a-97d9-b34487272f23 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.162","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f4aba492b5f7b41d55be0bd436c0a34f"} experiment-1 | {"level":"info","message":"DELETE /experiments/e4679ab8-9c06-4c3a-97d9-b34487272f23 204 157ms","method":"DELETE","requestID":"f4aba492b5f7b41d55be0bd436c0a34f","responseTime":157,"status":204,"url":"/experiments/e4679ab8-9c06-4c3a-97d9-b34487272f23"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 124ms","method":"POST","requestID":"c8024e190aa2599b6a935a289c1d7186","responseTime":124,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:55:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.127","http_referrer":"","http_user_agent":"node-fetch","requestID":"c8024e190aa2599b6a935a289c1d7186"} gateway-1 | {"time_local":"17/Jul/2024:10:55:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.128","http_referrer":"","http_user_agent":"node-fetch","requestID":"6c527d0324dfb93741bac0cee2634e70"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 123ms","method":"POST","requestID":"6c527d0324dfb93741bac0cee2634e70","responseTime":123,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyNn0.FYS5A3m9nNvaCvNMm004h7E_jQsrj3Azr9-S79M8LFE","level":"info","message":"auth send jwt","requestID":"d8aa4ad10498fe1d947949661877e480"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d8aa4ad10498fe1d947949661877e480","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"d8aa4ad10498fe1d947949661877e480"} gateway-1 | {"time_local":"17/Jul/2024:10:55:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2850","request_time":"0.647","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"5ebaf2c09cf2a06e46957f5314bc6b38"} gateway-1 | {"time_local":"17/Jul/2024:10:55:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2847","request_time":"0.635","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"28fbc9797fea85928ca641e3c337bd9d"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":614,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:26Z"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/9412c023-b121-454f-9437-5b590e92d411' closed"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":614,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.716342,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:26Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"d8aa4ad10498fe1d947949661877e480","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213726,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyNn0.FYS5A3m9nNvaCvNMm004h7E_jQsrj3Azr9-S79M8LFE"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"d8aa4ad10498fe1d947949661877e480","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/f61e733a-315b-474d-b20e-abb303530cba' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdf8e918a-0d1e-4120-bc29-4c997e608b43","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"72771eb6-40a3-40b5-8770-c57e30bf9d24","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213726.2890928} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d8aa4ad10498fe1d947949661877e480","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ce23749e-6e54-452a-840a-53058f3203d9","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213726.293302} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"d8aa4ad10498fe1d947949661877e480","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdf8e918a-0d1e-4120-bc29-4c997e608b43","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"af0dec98-c1d6-4d86-a5a2-2ef8cd36297f","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213726.3059642} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"87088283-793f-42fe-9e0a-bfaa5afda62e","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213726.3061044} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"d8aa4ad10498fe1d947949661877e480","responseTime":15,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdf8e918a-0d1e-4120-bc29-4c997e608b43","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdf8e918a-0d1e-4120-bc29-4c997e608b43","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:26.305942045Z"}]},"request_id":"6b354c4a-5a6e-43b5-a9d2-0343e547ffed","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213726.3101535} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d8aa4ad10498fe1d947949661877e480","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"d8aa4ad10498fe1d947949661877e480"} gateway-1 | {"time_local":"17/Jul/2024:10:55:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.062","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d8aa4ad10498fe1d947949661877e480"} device-1 | {"level":"info","message":"POST /devices? 201 56ms","method":"POST","requestID":"d8aa4ad10498fe1d947949661877e480","responseTime":56,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyNn0.FYS5A3m9nNvaCvNMm004h7E_jQsrj3Azr9-S79M8LFE","level":"info","message":"auth send jwt","requestID":"87c95c49d250387ee357c03b745b4f40"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"87c95c49d250387ee357c03b745b4f40","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"87c95c49d250387ee357c03b745b4f40"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":615,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:26Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":615,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.780053,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:26Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"87c95c49d250387ee357c03b745b4f40","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213726,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyNn0.FYS5A3m9nNvaCvNMm004h7E_jQsrj3Azr9-S79M8LFE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"87c95c49d250387ee357c03b745b4f40","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F199776fd-7452-4275-9dbc-4197d2338f15","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"6ccc4f65-f680-4fa9-97fd-0bcb27337a4e","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213726.3318412} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"87c95c49d250387ee357c03b745b4f40","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"19691919-e816-416b-9253-64f28fd45ce8","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213726.3363342} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"87c95c49d250387ee357c03b745b4f40","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F199776fd-7452-4275-9dbc-4197d2338f15","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"707d17ca-23bb-4055-aeb6-5993f87c47b3","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213726.3517535} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4e48c0b5-35c1-4264-9c8a-0785c8a8386e","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213726.3520248} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"87c95c49d250387ee357c03b745b4f40","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F199776fd-7452-4275-9dbc-4197d2338f15","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F199776fd-7452-4275-9dbc-4197d2338f15","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:26.351724777Z"}]},"request_id":"be89a24c-c396-43d2-804a-d4dbc7c529d8","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213726.3556669} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"87c95c49d250387ee357c03b745b4f40","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"87c95c49d250387ee357c03b745b4f40"} gateway-1 | {"time_local":"17/Jul/2024:10:55:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.044","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"87c95c49d250387ee357c03b745b4f40"} device-1 | {"level":"info","message":"POST /devices? 201 40ms","method":"POST","requestID":"87c95c49d250387ee357c03b745b4f40","responseTime":40,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyNn0.FYS5A3m9nNvaCvNMm004h7E_jQsrj3Azr9-S79M8LFE","level":"info","message":"auth send jwt","requestID":"00dd0cf0eda67982367687d8bbb31796"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"00dd0cf0eda67982367687d8bbb31796","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"00dd0cf0eda67982367687d8bbb31796"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":616,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:26Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":616,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.798453,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:26Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/199776fd-7452-4275-9dbc-4197d2338f15","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"00dd0cf0eda67982367687d8bbb31796","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/199776fd-7452-4275-9dbc-4197d2338f15","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213726,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyNn0.FYS5A3m9nNvaCvNMm004h7E_jQsrj3Azr9-S79M8LFE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"00dd0cf0eda67982367687d8bbb31796","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F199776fd-7452-4275-9dbc-4197d2338f15","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F199776fd-7452-4275-9dbc-4197d2338f15","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:26.351724777Z"}]},"request_id":"2dcc4e0c-f806-47a8-8e89-87a5e1507c4b","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213726.851142} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"00dd0cf0eda67982367687d8bbb31796","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9ad6231a-58be-4ac2-b3c1-af86763cc532","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213726.8580754} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"00dd0cf0eda67982367687d8bbb31796","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F199776fd-7452-4275-9dbc-4197d2338f15","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F199776fd-7452-4275-9dbc-4197d2338f15","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:26.351724777Z"}]},"request_id":"ce5d6b58-c8cb-492d-9625-6e9fa1689364","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213726.872281} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"00dd0cf0eda67982367687d8bbb31796","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"00dd0cf0eda67982367687d8bbb31796"} gateway-1 | {"time_local":"17/Jul/2024:10:55:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/199776fd-7452-4275-9dbc-4197d2338f15 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.046","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"00dd0cf0eda67982367687d8bbb31796"} device-1 | {"level":"info","message":"PATCH /devices/199776fd-7452-4275-9dbc-4197d2338f15 200 38ms","method":"PATCH","requestID":"00dd0cf0eda67982367687d8bbb31796","responseTime":38,"status":200,"url":"/devices/199776fd-7452-4275-9dbc-4197d2338f15"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyNn0.FYS5A3m9nNvaCvNMm004h7E_jQsrj3Azr9-S79M8LFE","level":"info","message":"auth send jwt","requestID":"b2d1a93005aff181546dddcbb84b866a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b2d1a93005aff181546dddcbb84b866a","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"b2d1a93005aff181546dddcbb84b866a"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":617,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:26Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":617,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.32428,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:26Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/199776fd-7452-4275-9dbc-4197d2338f15","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"b2d1a93005aff181546dddcbb84b866a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/199776fd-7452-4275-9dbc-4197d2338f15","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213726,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyNn0.FYS5A3m9nNvaCvNMm004h7E_jQsrj3Azr9-S79M8LFE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b2d1a93005aff181546dddcbb84b866a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"b2d1a93005aff181546dddcbb84b866a"} gateway-1 | {"time_local":"17/Jul/2024:10:55:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/199776fd-7452-4275-9dbc-4197d2338f15/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.027","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"b2d1a93005aff181546dddcbb84b866a"} device-1 | {"level":"info","message":"POST /devices/199776fd-7452-4275-9dbc-4197d2338f15/websocket 200 21ms","method":"POST","requestID":"b2d1a93005aff181546dddcbb84b866a","responseTime":21,"status":200,"url":"/devices/199776fd-7452-4275-9dbc-4197d2338f15/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/199776fd-7452-4275-9dbc-4197d2338f15' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6809619c537cc1e99b7b8e48304211ef","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"6809619c537cc1e99b7b8e48304211ef","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"17/Jul/2024:10:55:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/df8e918a-0d1e-4120-bc29-4c997e608b43/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"6809619c537cc1e99b7b8e48304211ef"} device-1 | {"level":"info","message":"OPTIONS /devices/df8e918a-0d1e-4120-bc29-4c997e608b43/websocket 200 1ms","method":"OPTIONS","requestID":"6809619c537cc1e99b7b8e48304211ef","responseTime":1,"status":200,"url":"/devices/df8e918a-0d1e-4120-bc29-4c997e608b43/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyOH0.taD8vcy5qcCv38xx0Ax0II56keBizohfMhba77tV8XM","level":"info","message":"auth send jwt","requestID":"2c62053b5c2b5e48b91550c7eb1b2ec8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2c62053b5c2b5e48b91550c7eb1b2ec8","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"2c62053b5c2b5e48b91550c7eb1b2ec8"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":618,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:28Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":618,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.326403,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:28Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/df8e918a-0d1e-4120-bc29-4c997e608b43","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"2c62053b5c2b5e48b91550c7eb1b2ec8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/df8e918a-0d1e-4120-bc29-4c997e608b43","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213728,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyOH0.taD8vcy5qcCv38xx0Ax0II56keBizohfMhba77tV8XM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2c62053b5c2b5e48b91550c7eb1b2ec8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"2c62053b5c2b5e48b91550c7eb1b2ec8"} device-1 | {"level":"info","message":"POST /devices/df8e918a-0d1e-4120-bc29-4c997e608b43/websocket 200 22ms","method":"POST","requestID":"2c62053b5c2b5e48b91550c7eb1b2ec8","responseTime":22,"status":200,"url":"/devices/df8e918a-0d1e-4120-bc29-4c997e608b43/websocket"} gateway-1 | {"time_local":"17/Jul/2024:10:55:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/df8e918a-0d1e-4120-bc29-4c997e608b43/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.028","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"2c62053b5c2b5e48b91550c7eb1b2ec8"} device-1 | {"level":"info","message":"device 'http://localhost/devices/df8e918a-0d1e-4120-bc29-4c997e608b43' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyOH0.taD8vcy5qcCv38xx0Ax0II56keBizohfMhba77tV8XM","level":"info","message":"auth send jwt","requestID":"3ca09bd162e3cbe48749ad854b857c24"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3ca09bd162e3cbe48749ad854b857c24","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3ca09bd162e3cbe48749ad854b857c24"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":619,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:28Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":619,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.261102,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/df8e918a-0d1e-4120-bc29-4c997e608b43","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"3ca09bd162e3cbe48749ad854b857c24","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/df8e918a-0d1e-4120-bc29-4c997e608b43","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213728,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyOH0.taD8vcy5qcCv38xx0Ax0II56keBizohfMhba77tV8XM"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"3ca09bd162e3cbe48749ad854b857c24","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdf8e918a-0d1e-4120-bc29-4c997e608b43","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdf8e918a-0d1e-4120-bc29-4c997e608b43","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:26.305942045Z"}]},"request_id":"f09d50a4-73f8-43f6-8a0a-7b9cf83f6e7e","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213728.4361584} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3ca09bd162e3cbe48749ad854b857c24","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3ca09bd162e3cbe48749ad854b857c24"} gateway-1 | {"time_local":"17/Jul/2024:10:55:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/df8e918a-0d1e-4120-bc29-4c997e608b43? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3ca09bd162e3cbe48749ad854b857c24"} device-1 | {"level":"info","message":"GET /devices/df8e918a-0d1e-4120-bc29-4c997e608b43? 200 19ms","method":"GET","requestID":"3ca09bd162e3cbe48749ad854b857c24","responseTime":19,"status":200,"url":"/devices/df8e918a-0d1e-4120-bc29-4c997e608b43?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyOH0.taD8vcy5qcCv38xx0Ax0II56keBizohfMhba77tV8XM","level":"info","message":"auth send jwt","requestID":"5de2cd6fd4c1cf6a4ab79c064795f131"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5de2cd6fd4c1cf6a4ab79c064795f131","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5de2cd6fd4c1cf6a4ab79c064795f131"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":620,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:28Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":620,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.207728,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/199776fd-7452-4275-9dbc-4197d2338f15","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"5de2cd6fd4c1cf6a4ab79c064795f131","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/199776fd-7452-4275-9dbc-4197d2338f15","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213728,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyOH0.taD8vcy5qcCv38xx0Ax0II56keBizohfMhba77tV8XM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5de2cd6fd4c1cf6a4ab79c064795f131","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F199776fd-7452-4275-9dbc-4197d2338f15","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F199776fd-7452-4275-9dbc-4197d2338f15","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:26.351724777Z"}]},"request_id":"175e677c-2e30-48fd-892e-9762655d9781","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213728.4612424} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5de2cd6fd4c1cf6a4ab79c064795f131","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5de2cd6fd4c1cf6a4ab79c064795f131"} device-1 | {"level":"info","message":"GET /devices/199776fd-7452-4275-9dbc-4197d2338f15? 200 17ms","method":"GET","requestID":"5de2cd6fd4c1cf6a4ab79c064795f131","responseTime":17,"status":200,"url":"/devices/199776fd-7452-4275-9dbc-4197d2338f15?"} gateway-1 | {"time_local":"17/Jul/2024:10:55:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/199776fd-7452-4275-9dbc-4197d2338f15? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5de2cd6fd4c1cf6a4ab79c064795f131"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyOH0.taD8vcy5qcCv38xx0Ax0II56keBizohfMhba77tV8XM","level":"info","message":"auth send jwt","requestID":"09097723860da345564021ffe365c35c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"09097723860da345564021ffe365c35c","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"09097723860da345564021ffe365c35c"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":621,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:28Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":621,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.159106,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:28Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"09097723860da345564021ffe365c35c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213728,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyOH0.taD8vcy5qcCv38xx0Ax0II56keBizohfMhba77tV8XM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"09097723860da345564021ffe365c35c","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cce7a05a-62d2-42f0-8062-617da159da92"},"level":"info","message":"Attempting to run experiment","requestID":"09097723860da345564021ffe365c35c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cce7a05a-62d2-42f0-8062-617da159da92"},"level":"info","message":"Attempting to book experiment","requestID":"09097723860da345564021ffe365c35c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cce7a05a-62d2-42f0-8062-617da159da92"},"level":"info","message":"Successfully booked experiment","requestID":"09097723860da345564021ffe365c35c"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1436c170-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"14370f90-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":622,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:28Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":622,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.128631,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:28Z"} authorization-1 | {"client_addr":"127.0.0.1:51506","level":"info","msg":"Received request.","req_id":623,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/df8e918a-0d1e-4120-bc29-4c997e608b43","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1436c170-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/df8e918a-0d1e-4120-bc29-4c997e608b43","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213728,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyOH0.taD8vcy5qcCv38xx0Ax0II56keBizohfMhba77tV8XM"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"1436c170-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51506","level":"info","msg":"Sent response.","req_id":623,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.25423,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/199776fd-7452-4275-9dbc-4197d2338f15","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"14370f90-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/199776fd-7452-4275-9dbc-4197d2338f15","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213728,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyOH0.taD8vcy5qcCv38xx0Ax0II56keBizohfMhba77tV8XM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"14370f90-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdf8e918a-0d1e-4120-bc29-4c997e608b43","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdf8e918a-0d1e-4120-bc29-4c997e608b43","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:26.305942045Z"}]},"request_id":"08e3bc07-569a-4caf-bfc8-e03e7ea0be73","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213728.531756} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"1436c170-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F199776fd-7452-4275-9dbc-4197d2338f15","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F199776fd-7452-4275-9dbc-4197d2338f15","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:26.351724777Z"}]},"request_id":"e119c936-d987-45f4-9bf2-4505db4a969a","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213728.5337098} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"14370f90-442b-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1436c170-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/df8e918a-0d1e-4120-bc29-4c997e608b43? 200 21ms","method":"GET","requestID":"1436c170-442b-11ef-8685-a1e9f27e6f28","responseTime":21,"status":200,"url":"/devices/df8e918a-0d1e-4120-bc29-4c997e608b43?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"14370f90-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/199776fd-7452-4275-9dbc-4197d2338f15? 200 20ms","method":"GET","requestID":"14370f90-442b-11ef-8685-a1e9f27e6f28","responseTime":20,"status":200,"url":"/devices/199776fd-7452-4275-9dbc-4197d2338f15?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cce7a05a-62d2-42f0-8062-617da159da92"},"level":"info","message":"Setting up experiment","requestID":"09097723860da345564021ffe365c35c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cce7a05a-62d2-42f0-8062-617da159da92"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"09097723860da345564021ffe365c35c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cce7a05a-62d2-42f0-8062-617da159da92"},"level":"info","message":"Successfully locked booking for experiment","requestID":"09097723860da345564021ffe365c35c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cce7a05a-62d2-42f0-8062-617da159da92"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"09097723860da345564021ffe365c35c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cce7a05a-62d2-42f0-8062-617da159da92"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"09097723860da345564021ffe365c35c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cce7a05a-62d2-42f0-8062-617da159da92"},"level":"info","message":"Attempting to update booking for experiment","requestID":"09097723860da345564021ffe365c35c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cce7a05a-62d2-42f0-8062-617da159da92"},"level":"info","message":"Successfully updated booking for experiment","requestID":"09097723860da345564021ffe365c35c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cce7a05a-62d2-42f0-8062-617da159da92"},"level":"info","message":"Successfully set up experiment","requestID":"09097723860da345564021ffe365c35c"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"144196e0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"14420c10-442b-11ef-8685-a1e9f27e6f28"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cce7a05a-62d2-42f0-8062-617da159da92"},"level":"info","message":"Successfully running experiment","requestID":"09097723860da345564021ffe365c35c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"14423320-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":624,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:28Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":624,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.691167,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:28Z"} authorization-1 | {"client_addr":"127.0.0.1:51506","level":"info","msg":"Received request.","req_id":625,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:28Z"} authorization-1 | {"client_addr":"127.0.0.1:51506","level":"info","msg":"Sent response.","req_id":625,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.544429,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/df8e918a-0d1e-4120-bc29-4c997e608b43","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"144196e0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/df8e918a-0d1e-4120-bc29-4c997e608b43","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213728,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyOH0.taD8vcy5qcCv38xx0Ax0II56keBizohfMhba77tV8XM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"144196e0-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/199776fd-7452-4275-9dbc-4197d2338f15","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"14420c10-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/199776fd-7452-4275-9dbc-4197d2338f15","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213728,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyOH0.taD8vcy5qcCv38xx0Ax0II56keBizohfMhba77tV8XM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"14420c10-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51510","level":"info","msg":"Received request.","req_id":626,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:28Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdf8e918a-0d1e-4120-bc29-4c997e608b43","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3b1252e5-647f-4883-9cfa-a755e55a3edd","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213728.6020296} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdf8e918a-0d1e-4120-bc29-4c997e608b43","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdf8e918a-0d1e-4120-bc29-4c997e608b43","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:26.305942045Z"}]},"request_id":"a2fbb034-a230-4c34-b181-4435c4e91e1d","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213728.6023085} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"144196e0-442b-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51510","level":"info","msg":"Sent response.","req_id":626,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.264322,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/df8e918a-0d1e-4120-bc29-4c997e608b43","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"14423320-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/df8e918a-0d1e-4120-bc29-4c997e608b43","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"14423320-442b-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F199776fd-7452-4275-9dbc-4197d2338f15","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F199776fd-7452-4275-9dbc-4197d2338f15","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:26.351724777Z"}]},"request_id":"f23c5559-4c55-4f76-91c2-dcd8ba1950ac","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213728.6034982} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"14420c10-442b-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"14423320-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/df8e918a-0d1e-4120-bc29-4c997e608b43/signaling 200 17ms","method":"POST","requestID":"14423320-442b-11ef-8685-a1e9f27e6f28","responseTime":17,"status":200,"url":"/devices/df8e918a-0d1e-4120-bc29-4c997e608b43/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"144196e0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/df8e918a-0d1e-4120-bc29-4c997e608b43? 200 22ms","method":"GET","requestID":"144196e0-442b-11ef-8685-a1e9f27e6f28","responseTime":22,"status":200,"url":"/devices/df8e918a-0d1e-4120-bc29-4c997e608b43?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"14420c10-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/199776fd-7452-4275-9dbc-4197d2338f15? 200 20ms","method":"GET","requestID":"14420c10-442b-11ef-8685-a1e9f27e6f28","responseTime":20,"status":200,"url":"/devices/199776fd-7452-4275-9dbc-4197d2338f15?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"14451950-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"14456770-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fcce7a05a-62d2-42f0-8062-617da159da92#owner@http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fcce7a05a-62d2-42f0-8062-617da159da92","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"7c671e86-4a14-4fec-a06b-358564cb8209","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213728.616457} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2a544238-7c9e-4180-b8a3-44d449023d64","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213728.6166122} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"09097723860da345564021ffe365c35c","responseTime":24,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F199776fd-7452-4275-9dbc-4197d2338f15","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b79ea9ec-0e28-4ff9-80f8-935f23a834d0","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213728.6191144} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":627,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:28Z"} authorization-1 | {"client_addr":"127.0.0.1:51506","level":"info","msg":"Received request.","req_id":628,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:28Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":627,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.635996,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/199776fd-7452-4275-9dbc-4197d2338f15","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"14451950-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/199776fd-7452-4275-9dbc-4197d2338f15","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"14451950-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdf8e918a-0d1e-4120-bc29-4c997e608b43","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ebe75b14-0073-4050-8f2e-ed3e321dd427","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213728.6215434} authorization-1 | {"client_addr":"127.0.0.1:51506","level":"info","msg":"Sent response.","req_id":628,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.506736,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/df8e918a-0d1e-4120-bc29-4c997e608b43","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"14456770-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/df8e918a-0d1e-4120-bc29-4c997e608b43","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"14456770-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/cce7a05a-62d2-42f0-8062-617da159da92","user":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"09097723860da345564021ffe365c35c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"14451950-442b-11ef-8685-a1e9f27e6f28"} experiment-1 | {"level":"info","message":"POST /experiments? 201 152ms","method":"POST","requestID":"09097723860da345564021ffe365c35c","responseTime":152,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"17/Jul/2024:10:55:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1215","request_time":"0.158","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"09097723860da345564021ffe365c35c"} device-1 | {"level":"info","message":"POST /devices/199776fd-7452-4275-9dbc-4197d2338f15/signaling 200 14ms","method":"POST","requestID":"14451950-442b-11ef-8685-a1e9f27e6f28","responseTime":14,"status":200,"url":"/devices/199776fd-7452-4275-9dbc-4197d2338f15/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"14456770-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/df8e918a-0d1e-4120-bc29-4c997e608b43/signaling 200 13ms","method":"POST","requestID":"14456770-442b-11ef-8685-a1e9f27e6f28","responseTime":13,"status":200,"url":"/devices/df8e918a-0d1e-4120-bc29-4c997e608b43/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1447b160-442b-11ef-8685-a1e9f27e6f28"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyOH0.taD8vcy5qcCv38xx0Ax0II56keBizohfMhba77tV8XM","level":"info","message":"auth send jwt","requestID":"c4feaecb84876999f7eb71cb7a0dd34b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c4feaecb84876999f7eb71cb7a0dd34b","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c4feaecb84876999f7eb71cb7a0dd34b"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":629,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:28Z"} authorization-1 | {"client_addr":"127.0.0.1:51506","level":"info","msg":"Received request.","req_id":630,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:28Z"} authorization-1 | {"client_addr":"127.0.0.1:51506","level":"info","msg":"Sent response.","req_id":630,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.720703,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/df8e918a-0d1e-4120-bc29-4c997e608b43","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"c4feaecb84876999f7eb71cb7a0dd34b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/df8e918a-0d1e-4120-bc29-4c997e608b43","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213728,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyOH0.taD8vcy5qcCv38xx0Ax0II56keBizohfMhba77tV8XM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c4feaecb84876999f7eb71cb7a0dd34b","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F199776fd-7452-4275-9dbc-4197d2338f15","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ffc036c0-e1a9-46f1-af3a-f12a58a3bd87","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213728.6358883} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":629,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.198195,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/199776fd-7452-4275-9dbc-4197d2338f15","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1447b160-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/199776fd-7452-4275-9dbc-4197d2338f15","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1447b160-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1447b160-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdf8e918a-0d1e-4120-bc29-4c997e608b43","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdf8e918a-0d1e-4120-bc29-4c997e608b43","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:26.305942045Z"}]},"request_id":"dad7374b-c623-4e31-83b0-83c77ad21f23","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213728.6392963} device-1 | {"level":"info","message":"POST /devices/199776fd-7452-4275-9dbc-4197d2338f15/signaling 200 9ms","method":"POST","requestID":"1447b160-442b-11ef-8685-a1e9f27e6f28","responseTime":9,"status":200,"url":"/devices/199776fd-7452-4275-9dbc-4197d2338f15/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c4feaecb84876999f7eb71cb7a0dd34b","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cce7a05a-62d2-42f0-8062-617da159da92"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"09097723860da345564021ffe365c35c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cce7a05a-62d2-42f0-8062-617da159da92"},"level":"info","message":"Building connection plan","requestID":"09097723860da345564021ffe365c35c"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"740a7fdd-13a3-4cb4-81fe-c5e4f9d20a78"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"584cf75f-1314-4c5f-8722-c410fbd7eca2"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"76f31c73-3ced-45a8-89dc-6edd312b701d"}]},"level":"info","message":"Built pairwise service configurations","requestID":"09097723860da345564021ffe365c35c"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/df8e918a-0d1e-4120-bc29-4c997e608b43"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/199776fd-7452-4275-9dbc-4197d2338f15"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"09097723860da345564021ffe365c35c"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"14498620-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c4feaecb84876999f7eb71cb7a0dd34b"} gateway-1 | {"time_local":"17/Jul/2024:10:55:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/df8e918a-0d1e-4120-bc29-4c997e608b43? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c4feaecb84876999f7eb71cb7a0dd34b"} device-1 | {"level":"info","message":"GET /devices/df8e918a-0d1e-4120-bc29-4c997e608b43? 200 12ms","method":"GET","requestID":"c4feaecb84876999f7eb71cb7a0dd34b","responseTime":12,"status":200,"url":"/devices/df8e918a-0d1e-4120-bc29-4c997e608b43?"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":631,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:28Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":631,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.940132,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:28Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"14498620-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213728,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyOH0.taD8vcy5qcCv38xx0Ax0II56keBizohfMhba77tV8XM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"14498620-442b-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyOH0.taD8vcy5qcCv38xx0Ax0II56keBizohfMhba77tV8XM","level":"info","message":"auth send jwt","requestID":"eb5d7e8561b639b5c713f40c318801b8"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"eb5d7e8561b639b5c713f40c318801b8","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"eb5d7e8561b639b5c713f40c318801b8"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":632,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:28Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":632,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.914289,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/199776fd-7452-4275-9dbc-4197d2338f15","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"eb5d7e8561b639b5c713f40c318801b8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/199776fd-7452-4275-9dbc-4197d2338f15","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213728,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzcyOH0.taD8vcy5qcCv38xx0Ax0II56keBizohfMhba77tV8XM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"eb5d7e8561b639b5c713f40c318801b8","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"749b2afc-489c-470c-aa64-0ad4f0729933","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213728.6569984} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4a661691-e17c-4ec7-a9e9-5b36fff67bbf","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213728.6573815} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F199776fd-7452-4275-9dbc-4197d2338f15","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F199776fd-7452-4275-9dbc-4197d2338f15","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:26.351724777Z"}]},"request_id":"5ad14dbb-a45b-46da-9294-99c6ec9da35e","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213728.658053} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"14498620-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"eb5d7e8561b639b5c713f40c318801b8","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"eb5d7e8561b639b5c713f40c318801b8"} device-1 | {"level":"info","message":"GET /devices/199776fd-7452-4275-9dbc-4197d2338f15? 200 13ms","method":"GET","requestID":"eb5d7e8561b639b5c713f40c318801b8","responseTime":13,"status":200,"url":"/devices/199776fd-7452-4275-9dbc-4197d2338f15?"} gateway-1 | {"time_local":"17/Jul/2024:10:55:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/199776fd-7452-4275-9dbc-4197d2338f15? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"eb5d7e8561b639b5c713f40c318801b8"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"14498620-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"14498620-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/5eab8a19-92ad-48c4-ad0b-cab8431c8de0'","requestID":"14498620-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/5eab8a19-92ad-48c4-ad0b-cab8431c8de0'","requestID":"14498620-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"14498620-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 34ms","method":"POST","requestID":"14498620-442b-11ef-8685-a1e9f27e6f28","responseTime":34,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"14498620-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/5eab8a19-92ad-48c4-ad0b-cab8431c8de0","device":"df8e918a-0d1e-4120-bc29-4c997e608b43","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":false} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cce7a05a-62d2-42f0-8062-617da159da92"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"09097723860da345564021ffe365c35c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1452d4f0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":633,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:28Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdf8e918a-0d1e-4120-bc29-4c997e608b43","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9a83673c-1c57-4d64-9b06-5dba59669668","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213728.707532} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":633,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.363361,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/df8e918a-0d1e-4120-bc29-4c997e608b43","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1452d4f0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/df8e918a-0d1e-4120-bc29-4c997e608b43","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1452d4f0-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1452d4f0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/df8e918a-0d1e-4120-bc29-4c997e608b43/signaling 200 9ms","method":"POST","requestID":"1452d4f0-442b-11ef-8685-a1e9f27e6f28","responseTime":9,"status":200,"url":"/devices/df8e918a-0d1e-4120-bc29-4c997e608b43/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"145482a0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"device":"df8e918a-0d1e-4120-bc29-4c997e608b43","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"df8e918a-0d1e-4120-bc29-4c997e608b43","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":634,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:28Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F199776fd-7452-4275-9dbc-4197d2338f15","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"014d091c-b790-4cfd-9bc0-8c1824f40ad9","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213728.7184103} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":634,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.115385,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/199776fd-7452-4275-9dbc-4197d2338f15","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"145482a0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/199776fd-7452-4275-9dbc-4197d2338f15","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"145482a0-442b-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"145482a0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/199776fd-7452-4275-9dbc-4197d2338f15/signaling 200 7ms","method":"POST","requestID":"145482a0-442b-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/devices/199776fd-7452-4275-9dbc-4197d2338f15/signaling"} device-1 | {"device":"199776fd-7452-4275-9dbc-4197d2338f15","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"5eab8a19-92ad-48c4-ad0b-cab8431c8de0","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 1616682922454590285 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=msid-semantic: WMS\r\nm=application 9 DTLS/SCTP 5000\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:hEh7\r\na=ice-pwd:TqY3UWJtm72YMBScPNRLG3C8\r\na=ice-options:trickle\r\na=fingerprint:sha-256 56:32:A7:32:E2:39:BD:1B:64:DF:2A:AC:3B:80:F7:06:0B:D1:22:E6:77:B3:DE:97:A0:0A:8C:F8:37:51:E7:56\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"df8e918a-0d1e-4120-bc29-4c997e608b43","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:784252514 1 udp 2113937151 d1d11aaf-c604-4f87-a322-4e456570f905.local 55901 typ host generation 0 ufrag hEh7 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"df8e918a-0d1e-4120-bc29-4c997e608b43","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"df8e918a-0d1e-4120-bc29-4c997e608b43","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/5eab8a19-92ad-48c4-ad0b-cab8431c8de0' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"5eab8a19-92ad-48c4-ad0b-cab8431c8de0","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"candidate":"candidate:3180666737 1 udp 1677729535 141.24.211.56 55901 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag hEh7 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"df8e918a-0d1e-4120-bc29-4c997e608b43","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"199776fd-7452-4275-9dbc-4197d2338f15","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8b7363d5416471c0cc9194a408d8dfa4","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} device-1 | {"device":"199776fd-7452-4275-9dbc-4197d2338f15","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/df8e918a-0d1e-4120-bc29-4c997e608b43"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/199776fd-7452-4275-9dbc-4197d2338f15"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/5eab8a19-92ad-48c4-ad0b-cab8431c8de0"}}},"level":"info","message":"received a callback","requestID":"8b7363d5416471c0cc9194a408d8dfa4"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"8b7363d5416471c0cc9194a408d8dfa4","responseTime":2,"status":200,"url":"/auth"} device-1 | {"device":"199776fd-7452-4275-9dbc-4197d2338f15","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/df8e918a-0d1e-4120-bc29-4c997e608b43'"} device-1 | {"device":"df8e918a-0d1e-4120-bc29-4c997e608b43","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 5ms","method":"POST","requestID":"8b7363d5416471c0cc9194a408d8dfa4","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:55:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.008","http_referrer":"","http_user_agent":"node-fetch","requestID":"8b7363d5416471c0cc9194a408d8dfa4"} device-1 | {"data":{"peerconnection":"5eab8a19-92ad-48c4-ad0b-cab8431c8de0","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"199776fd-7452-4275-9dbc-4197d2338f15","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"df8e918a-0d1e-4120-bc29-4c997e608b43","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"199776fd-7452-4275-9dbc-4197d2338f15","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"5eab8a19-92ad-48c4-ad0b-cab8431c8de0","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"df8e918a-0d1e-4120-bc29-4c997e608b43","deviceName":"JS Device 1","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/5eab8a19-92ad-48c4-ad0b-cab8431c8de0' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"5eab8a19-92ad-48c4-ad0b-cab8431c8de0","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"46e81585bf924747d56a15ff7684a7a0","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"46e81585bf924747d56a15ff7684a7a0","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/df8e918a-0d1e-4120-bc29-4c997e608b43"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/199776fd-7452-4275-9dbc-4197d2338f15"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/5eab8a19-92ad-48c4-ad0b-cab8431c8de0"}}},"level":"info","message":"received a callback","requestID":"46e81585bf924747d56a15ff7684a7a0"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"159e40b0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":635,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:30Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F5eab8a19-92ad-48c4-ad0b-cab8431c8de0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"16c77918-943e-4209-8e5d-62aad5ae6933","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213730.8823707} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":635,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":4.068369,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/5eab8a19-92ad-48c4-ad0b-cab8431c8de0","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"159e40b0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/5eab8a19-92ad-48c4-ad0b-cab8431c8de0","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"159e40b0-442b-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"159e40b0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /peerconnections/5eab8a19-92ad-48c4-ad0b-cab8431c8de0 200 13ms","method":"GET","requestID":"159e40b0-442b-11ef-8685-a1e9f27e6f28","responseTime":13,"status":200,"url":"/peerconnections/5eab8a19-92ad-48c4-ad0b-cab8431c8de0"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 42ms","method":"POST","requestID":"46e81585bf924747d56a15ff7684a7a0","responseTime":42,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:55:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.046","http_referrer":"","http_user_agent":"node-fetch","requestID":"46e81585bf924747d56a15ff7684a7a0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"15a3bef0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":636,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:30Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdf8e918a-0d1e-4120-bc29-4c997e608b43","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ed649d29-9248-4b9f-8c94-9e37c85ce34e","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213730.9171877} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":636,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.888705,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:30Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/df8e918a-0d1e-4120-bc29-4c997e608b43","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"15a3bef0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/df8e918a-0d1e-4120-bc29-4c997e608b43","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"15a3bef0-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"15a3bef0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/df8e918a-0d1e-4120-bc29-4c997e608b43/signaling 200 12ms","method":"POST","requestID":"15a3bef0-442b-11ef-8685-a1e9f27e6f28","responseTime":12,"status":200,"url":"/devices/df8e918a-0d1e-4120-bc29-4c997e608b43/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"15a608e0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":637,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:30Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F199776fd-7452-4275-9dbc-4197d2338f15","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ff8a4229-c2b9-418e-ad75-b2fd118d4d6a","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213730.931888} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":637,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.681723,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:30Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/199776fd-7452-4275-9dbc-4197d2338f15","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"15a608e0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/199776fd-7452-4275-9dbc-4197d2338f15","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"15a608e0-442b-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"15a608e0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/199776fd-7452-4275-9dbc-4197d2338f15/signaling 200 12ms","method":"POST","requestID":"15a608e0-442b-11ef-8685-a1e9f27e6f28","responseTime":12,"status":200,"url":"/devices/199776fd-7452-4275-9dbc-4197d2338f15/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzczMH0.MgEYjYjcUjNLABMCATgeQpPY_C7V6XLkcYUk6AfWncM","level":"info","message":"auth send jwt","requestID":"6cb20aa5d8f34c4cfac545932cf4cc46"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6cb20aa5d8f34c4cfac545932cf4cc46","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/cce7a05a-62d2-42f0-8062-617da159da92","requestID":"6cb20aa5d8f34c4cfac545932cf4cc46"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":638,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:30Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":638,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.167813,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/cce7a05a-62d2-42f0-8062-617da159da92","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"6cb20aa5d8f34c4cfac545932cf4cc46","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:http://localhost/experiments/cce7a05a-62d2-42f0-8062-617da159da92","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213730,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzczMH0.MgEYjYjcUjNLABMCATgeQpPY_C7V6XLkcYUk6AfWncM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6cb20aa5d8f34c4cfac545932cf4cc46","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/cce7a05a-62d2-42f0-8062-617da159da92","requestID":"6cb20aa5d8f34c4cfac545932cf4cc46"} experiment-1 | {"level":"info","message":"GET /experiments/cce7a05a-62d2-42f0-8062-617da159da92 200 15ms","method":"GET","requestID":"6cb20aa5d8f34c4cfac545932cf4cc46","responseTime":15,"status":200,"url":"/experiments/cce7a05a-62d2-42f0-8062-617da159da92"} gateway-1 | {"time_local":"17/Jul/2024:10:55:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/cce7a05a-62d2-42f0-8062-617da159da92 HTTP/1.1","status": "200","body_bytes_sent":"1288","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6cb20aa5d8f34c4cfac545932cf4cc46"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzczMH0.MgEYjYjcUjNLABMCATgeQpPY_C7V6XLkcYUk6AfWncM","level":"info","message":"auth send jwt","requestID":"a4cf146128e81b89b7f0bbf364eeeae8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a4cf146128e81b89b7f0bbf364eeeae8","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/cce7a05a-62d2-42f0-8062-617da159da92","requestID":"a4cf146128e81b89b7f0bbf364eeeae8"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":639,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:30Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":639,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.222142,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:30Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/cce7a05a-62d2-42f0-8062-617da159da92","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"a4cf146128e81b89b7f0bbf364eeeae8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:http://localhost/experiments/cce7a05a-62d2-42f0-8062-617da159da92","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213730,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzczMH0.MgEYjYjcUjNLABMCATgeQpPY_C7V6XLkcYUk6AfWncM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a4cf146128e81b89b7f0bbf364eeeae8","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cce7a05a-62d2-42f0-8062-617da159da92"},"level":"info","message":"Attempting to finish experiment","requestID":"a4cf146128e81b89b7f0bbf364eeeae8"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"15b23de0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":640,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:31Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":640,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":2.655395,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:31Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/5eab8a19-92ad-48c4-ad0b-cab8431c8de0","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"15b23de0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"peerconnection:http://localhost/peerconnections/5eab8a19-92ad-48c4-ad0b-cab8431c8de0","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213730,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzczMH0.MgEYjYjcUjNLABMCATgeQpPY_C7V6XLkcYUk6AfWncM"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"15b23de0-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/5eab8a19-92ad-48c4-ad0b-cab8431c8de0","device":"df8e918a-0d1e-4120-bc29-4c997e608b43","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"199776fd-7452-4275-9dbc-4197d2338f15","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"199776fd-7452-4275-9dbc-4197d2338f15","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"199776fd-7452-4275-9dbc-4197d2338f15","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/5eab8a19-92ad-48c4-ad0b-cab8431c8de0' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/5eab8a19-92ad-48c4-ad0b-cab8431c8de0' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"5eab8a19-92ad-48c4-ad0b-cab8431c8de0","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F5eab8a19-92ad-48c4-ad0b-cab8431c8de0': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F5eab8a19-92ad-48c4-ad0b-cab8431c8de0","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]},"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":null},"raw_response":{},"request_id":"bdf18434-6a36-4f9b-b8d0-affc27de4aea","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213731.0319407} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3156a6124f9342986a988585da862db3","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e12da8a4-b30f-4364-935f-7c3b087a60b8","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213731.0326288} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"3156a6124f9342986a988585da862db3","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"15b23de0-442b-11ef-8685-a1e9f27e6f28","responseTime":12,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e052697eb39b2a39b2d84c07c683e0bb","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/df8e918a-0d1e-4120-bc29-4c997e608b43"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/199776fd-7452-4275-9dbc-4197d2338f15"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/5eab8a19-92ad-48c4-ad0b-cab8431c8de0"}}},"level":"info","message":"received a callback","requestID":"3156a6124f9342986a988585da862db3"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"e052697eb39b2a39b2d84c07c683e0bb","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/df8e918a-0d1e-4120-bc29-4c997e608b43"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/199776fd-7452-4275-9dbc-4197d2338f15"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/5eab8a19-92ad-48c4-ad0b-cab8431c8de0"}}},"level":"info","message":"received a callback","requestID":"e052697eb39b2a39b2d84c07c683e0bb"} device-1 | {"data":{"peerconnection":"5eab8a19-92ad-48c4-ad0b-cab8431c8de0","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"15b23de0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"DELETE /peerconnections/5eab8a19-92ad-48c4-ad0b-cab8431c8de0 204 51ms","method":"DELETE","requestID":"15b23de0-442b-11ef-8685-a1e9f27e6f28","responseTime":51,"status":204,"url":"/peerconnections/5eab8a19-92ad-48c4-ad0b-cab8431c8de0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cce7a05a-62d2-42f0-8062-617da159da92"},"level":"info","message":"Successfully finished experiment","requestID":"a4cf146128e81b89b7f0bbf364eeeae8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"15bd8880-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":641,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:31Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdf8e918a-0d1e-4120-bc29-4c997e608b43","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"618e59c6-a557-4b7c-9877-b2c12b4d1955","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213731.087376} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":641,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.223983,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/df8e918a-0d1e-4120-bc29-4c997e608b43","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"15bd8880-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/df8e918a-0d1e-4120-bc29-4c997e608b43","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"15bd8880-442b-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"15bd8880-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/df8e918a-0d1e-4120-bc29-4c997e608b43/signaling 200 14ms","method":"POST","requestID":"15bd8880-442b-11ef-8685-a1e9f27e6f28","responseTime":14,"status":200,"url":"/devices/df8e918a-0d1e-4120-bc29-4c997e608b43/signaling"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fcce7a05a-62d2-42f0-8062-617da159da92': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fcce7a05a-62d2-42f0-8062-617da159da92","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]},"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":null},"raw_response":{},"request_id":"72d432da-3a18-4548-8228-e420cf31b66c","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213731.097749} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"15c047a0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"213fab12-7f3d-4b44-904f-1efcaea24a2e","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213731.0978434} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"a4cf146128e81b89b7f0bbf364eeeae8","responseTime":22,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":642,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:31Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F199776fd-7452-4275-9dbc-4197d2338f15","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3d169655-98bb-40b1-a033-1597e30bc5b2","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213731.1037233} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":642,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.086813,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/199776fd-7452-4275-9dbc-4197d2338f15","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"15c047a0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/199776fd-7452-4275-9dbc-4197d2338f15","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"15c047a0-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"15c047a0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/199776fd-7452-4275-9dbc-4197d2338f15/signaling 200 12ms","method":"POST","requestID":"15c047a0-442b-11ef-8685-a1e9f27e6f28","responseTime":12,"status":200,"url":"/devices/199776fd-7452-4275-9dbc-4197d2338f15/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/cce7a05a-62d2-42f0-8062-617da159da92","requestID":"a4cf146128e81b89b7f0bbf364eeeae8"} gateway-1 | {"time_local":"17/Jul/2024:10:55:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/cce7a05a-62d2-42f0-8062-617da159da92 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.176","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a4cf146128e81b89b7f0bbf364eeeae8"} experiment-1 | {"level":"info","message":"DELETE /experiments/cce7a05a-62d2-42f0-8062-617da159da92 204 172ms","method":"DELETE","requestID":"a4cf146128e81b89b7f0bbf364eeeae8","responseTime":172,"status":204,"url":"/experiments/cce7a05a-62d2-42f0-8062-617da159da92"} gateway-1 | {"time_local":"17/Jul/2024:10:55:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2798","request_time":"4.257","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"fa11f4a5c34e1a8018cc07cecc52479d"} gateway-1 | {"time_local":"17/Jul/2024:10:55:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.134","http_referrer":"","http_user_agent":"node-fetch","requestID":"3156a6124f9342986a988585da862db3"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 128ms","method":"POST","requestID":"3156a6124f9342986a988585da862db3","responseTime":128,"status":200,"url":"/callbacks/experiment"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 127ms","method":"POST","requestID":"e052697eb39b2a39b2d84c07c683e0bb","responseTime":127,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:55:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.134","http_referrer":"","http_user_agent":"node-fetch","requestID":"e052697eb39b2a39b2d84c07c683e0bb"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzczMX0.M8_I-d-OJ5aqMtwx57xRJNgeJ5QjsX3ZAyHjaRUGz_w","level":"info","message":"auth send jwt","requestID":"dacf5c8a2978fcdaffb0756e9ec7d876"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"dacf5c8a2978fcdaffb0756e9ec7d876","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"dacf5c8a2978fcdaffb0756e9ec7d876"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":643,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:31Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":643,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.954334,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:31Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"dacf5c8a2978fcdaffb0756e9ec7d876","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213731,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzczMX0.M8_I-d-OJ5aqMtwx57xRJNgeJ5QjsX3ZAyHjaRUGz_w"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"dacf5c8a2978fcdaffb0756e9ec7d876","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"17/Jul/2024:10:55:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2709","request_time":"2.775","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"b84330314a348a40a14dc8c93fd48a26"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/199776fd-7452-4275-9dbc-4197d2338f15' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F83bc0d3e-d882-4ef1-87eb-b98c2984adc8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"53e073ae-e6ac-41c4-a68d-729749bae7a6","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213731.1929426} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"dacf5c8a2978fcdaffb0756e9ec7d876","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/df8e918a-0d1e-4120-bc29-4c997e608b43' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"db810e17-fd34-43e3-ad45-128826921510","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213731.1980848} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"dacf5c8a2978fcdaffb0756e9ec7d876","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F83bc0d3e-d882-4ef1-87eb-b98c2984adc8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"3dbe19fb-0407-437b-b6cd-10f09b3c1d5b","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213731.2094736} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"19501308-f428-4218-8e01-d05dcf8b0197","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213731.209746} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"dacf5c8a2978fcdaffb0756e9ec7d876","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F83bc0d3e-d882-4ef1-87eb-b98c2984adc8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F83bc0d3e-d882-4ef1-87eb-b98c2984adc8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:31.209450178Z"}]},"request_id":"b133e87c-6fd5-45d7-9393-c5df328fc94e","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213731.2138965} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"dacf5c8a2978fcdaffb0756e9ec7d876","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"dacf5c8a2978fcdaffb0756e9ec7d876"} gateway-1 | {"time_local":"17/Jul/2024:10:55:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.052","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"dacf5c8a2978fcdaffb0756e9ec7d876"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"dacf5c8a2978fcdaffb0756e9ec7d876","responseTime":46,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzczMX0.M8_I-d-OJ5aqMtwx57xRJNgeJ5QjsX3ZAyHjaRUGz_w","level":"info","message":"auth send jwt","requestID":"a777f9bde54eda25f846f8ea4ceb264d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a777f9bde54eda25f846f8ea4ceb264d","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"a777f9bde54eda25f846f8ea4ceb264d"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":644,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:31Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":644,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.741445,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:31Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"a777f9bde54eda25f846f8ea4ceb264d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213731,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzczMX0.M8_I-d-OJ5aqMtwx57xRJNgeJ5QjsX3ZAyHjaRUGz_w"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a777f9bde54eda25f846f8ea4ceb264d","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F19f0c019-6c9c-4bcc-a4e9-64e739988a99","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"63a68afb-381b-4b56-85b2-aa88d143c836","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213731.2441952} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a777f9bde54eda25f846f8ea4ceb264d","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6d94a7a0-96a7-4688-8bc3-3b4a9add21e8","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213731.248892} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"a777f9bde54eda25f846f8ea4ceb264d","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F19f0c019-6c9c-4bcc-a4e9-64e739988a99","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"a79d302c-11d9-420a-8f20-90787d27d291","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213731.2602289} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f7d16030-89f2-425f-80fe-8a1a189e2a5b","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213731.2604656} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"a777f9bde54eda25f846f8ea4ceb264d","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F19f0c019-6c9c-4bcc-a4e9-64e739988a99","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F19f0c019-6c9c-4bcc-a4e9-64e739988a99","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:31.260199275Z"}]},"request_id":"8e396b59-d729-4d0e-ae7a-efe29ab9db10","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213731.2642403} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a777f9bde54eda25f846f8ea4ceb264d","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"a777f9bde54eda25f846f8ea4ceb264d"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"a777f9bde54eda25f846f8ea4ceb264d","responseTime":45,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"17/Jul/2024:10:55:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a777f9bde54eda25f846f8ea4ceb264d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzczMX0.M8_I-d-OJ5aqMtwx57xRJNgeJ5QjsX3ZAyHjaRUGz_w","level":"info","message":"auth send jwt","requestID":"fc96c970d276ab19324591a8253f87c7"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"fc96c970d276ab19324591a8253f87c7","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"fc96c970d276ab19324591a8253f87c7"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":645,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:31Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":645,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.211206,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:31Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/19f0c019-6c9c-4bcc-a4e9-64e739988a99","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"fc96c970d276ab19324591a8253f87c7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/19f0c019-6c9c-4bcc-a4e9-64e739988a99","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213731,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzczMX0.M8_I-d-OJ5aqMtwx57xRJNgeJ5QjsX3ZAyHjaRUGz_w"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fc96c970d276ab19324591a8253f87c7","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F19f0c019-6c9c-4bcc-a4e9-64e739988a99","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F19f0c019-6c9c-4bcc-a4e9-64e739988a99","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:31.260199275Z"}]},"request_id":"ce8ec3c8-8374-46bd-958e-e1ccbf20236e","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213731.761209} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"fc96c970d276ab19324591a8253f87c7","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b51d3455-b4bd-44d0-9a46-1368339015cb","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213731.7692792} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"fc96c970d276ab19324591a8253f87c7","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F19f0c019-6c9c-4bcc-a4e9-64e739988a99","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F19f0c019-6c9c-4bcc-a4e9-64e739988a99","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:31.260199275Z"}]},"request_id":"92f76adc-ec6b-4848-901e-fc0f0b8dce51","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213731.7826526} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"fc96c970d276ab19324591a8253f87c7","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"fc96c970d276ab19324591a8253f87c7"} gateway-1 | {"time_local":"17/Jul/2024:10:55:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/19f0c019-6c9c-4bcc-a4e9-64e739988a99 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.043","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"fc96c970d276ab19324591a8253f87c7"} device-1 | {"level":"info","message":"PATCH /devices/19f0c019-6c9c-4bcc-a4e9-64e739988a99 200 39ms","method":"PATCH","requestID":"fc96c970d276ab19324591a8253f87c7","responseTime":39,"status":200,"url":"/devices/19f0c019-6c9c-4bcc-a4e9-64e739988a99"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzczMX0.M8_I-d-OJ5aqMtwx57xRJNgeJ5QjsX3ZAyHjaRUGz_w","level":"info","message":"auth send jwt","requestID":"df57bb4c76efafbef0b133ff703ef4c5"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"df57bb4c76efafbef0b133ff703ef4c5","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"df57bb4c76efafbef0b133ff703ef4c5"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":646,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:31Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":646,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.173444,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:31Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/19f0c019-6c9c-4bcc-a4e9-64e739988a99","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"df57bb4c76efafbef0b133ff703ef4c5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/19f0c019-6c9c-4bcc-a4e9-64e739988a99","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213731,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzczMX0.M8_I-d-OJ5aqMtwx57xRJNgeJ5QjsX3ZAyHjaRUGz_w"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"df57bb4c76efafbef0b133ff703ef4c5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"df57bb4c76efafbef0b133ff703ef4c5"} device-1 | {"level":"info","message":"POST /devices/19f0c019-6c9c-4bcc-a4e9-64e739988a99/websocket 200 20ms","method":"POST","requestID":"df57bb4c76efafbef0b133ff703ef4c5","responseTime":20,"status":200,"url":"/devices/19f0c019-6c9c-4bcc-a4e9-64e739988a99/websocket"} gateway-1 | {"time_local":"17/Jul/2024:10:55:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/19f0c019-6c9c-4bcc-a4e9-64e739988a99/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.024","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"df57bb4c76efafbef0b133ff703ef4c5"} device-1 | {"level":"info","message":"device 'http://localhost/devices/19f0c019-6c9c-4bcc-a4e9-64e739988a99' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3bad7d96ea5b08ad5fcc8d08bf512f17","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"3bad7d96ea5b08ad5fcc8d08bf512f17","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"17/Jul/2024:10:55:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/83bc0d3e-d882-4ef1-87eb-b98c2984adc8/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"3bad7d96ea5b08ad5fcc8d08bf512f17"} device-1 | {"level":"info","message":"OPTIONS /devices/83bc0d3e-d882-4ef1-87eb-b98c2984adc8/websocket 200 2ms","method":"OPTIONS","requestID":"3bad7d96ea5b08ad5fcc8d08bf512f17","responseTime":2,"status":200,"url":"/devices/83bc0d3e-d882-4ef1-87eb-b98c2984adc8/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzczM30.S6NBJ2FSFoGYW0WhPzERemLUb_zcw4jAkOH0uasQua0","level":"info","message":"auth send jwt","requestID":"0d9bdb8dafbe4631435c6597781c6565"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0d9bdb8dafbe4631435c6597781c6565","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"0d9bdb8dafbe4631435c6597781c6565"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":647,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:33Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":647,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.26148,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:33Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/83bc0d3e-d882-4ef1-87eb-b98c2984adc8","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0d9bdb8dafbe4631435c6597781c6565","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/83bc0d3e-d882-4ef1-87eb-b98c2984adc8","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213733,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzczM30.S6NBJ2FSFoGYW0WhPzERemLUb_zcw4jAkOH0uasQua0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0d9bdb8dafbe4631435c6597781c6565","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"0d9bdb8dafbe4631435c6597781c6565"} gateway-1 | {"time_local":"17/Jul/2024:10:55:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/83bc0d3e-d882-4ef1-87eb-b98c2984adc8/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.027","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"0d9bdb8dafbe4631435c6597781c6565"} device-1 | {"level":"info","message":"POST /devices/83bc0d3e-d882-4ef1-87eb-b98c2984adc8/websocket 200 22ms","method":"POST","requestID":"0d9bdb8dafbe4631435c6597781c6565","responseTime":22,"status":200,"url":"/devices/83bc0d3e-d882-4ef1-87eb-b98c2984adc8/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/83bc0d3e-d882-4ef1-87eb-b98c2984adc8' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzczM30.S6NBJ2FSFoGYW0WhPzERemLUb_zcw4jAkOH0uasQua0","level":"info","message":"auth send jwt","requestID":"3a6dae2184f404eab315132d3fafa4f5"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"3a6dae2184f404eab315132d3fafa4f5","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3a6dae2184f404eab315132d3fafa4f5"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":648,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:33Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":648,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.359501,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/83bc0d3e-d882-4ef1-87eb-b98c2984adc8","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"3a6dae2184f404eab315132d3fafa4f5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/83bc0d3e-d882-4ef1-87eb-b98c2984adc8","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213733,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzczM30.S6NBJ2FSFoGYW0WhPzERemLUb_zcw4jAkOH0uasQua0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3a6dae2184f404eab315132d3fafa4f5","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F83bc0d3e-d882-4ef1-87eb-b98c2984adc8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F83bc0d3e-d882-4ef1-87eb-b98c2984adc8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:31.209450178Z"}]},"request_id":"9c093804-30df-41eb-bd88-8482f71bda0a","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213733.3274202} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3a6dae2184f404eab315132d3fafa4f5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3a6dae2184f404eab315132d3fafa4f5"} device-1 | {"level":"info","message":"GET /devices/83bc0d3e-d882-4ef1-87eb-b98c2984adc8? 200 18ms","method":"GET","requestID":"3a6dae2184f404eab315132d3fafa4f5","responseTime":18,"status":200,"url":"/devices/83bc0d3e-d882-4ef1-87eb-b98c2984adc8?"} gateway-1 | {"time_local":"17/Jul/2024:10:55:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/83bc0d3e-d882-4ef1-87eb-b98c2984adc8? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3a6dae2184f404eab315132d3fafa4f5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzczM30.S6NBJ2FSFoGYW0WhPzERemLUb_zcw4jAkOH0uasQua0","level":"info","message":"auth send jwt","requestID":"890224a2d2ea6bb4c391312264e732bc"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"890224a2d2ea6bb4c391312264e732bc","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"890224a2d2ea6bb4c391312264e732bc"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":649,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:33Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":649,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.250183,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/19f0c019-6c9c-4bcc-a4e9-64e739988a99","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"890224a2d2ea6bb4c391312264e732bc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/19f0c019-6c9c-4bcc-a4e9-64e739988a99","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213733,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzczM30.S6NBJ2FSFoGYW0WhPzERemLUb_zcw4jAkOH0uasQua0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"890224a2d2ea6bb4c391312264e732bc","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F19f0c019-6c9c-4bcc-a4e9-64e739988a99","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F19f0c019-6c9c-4bcc-a4e9-64e739988a99","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:31.260199275Z"}]},"request_id":"fb27e99a-fff5-41b2-ac2c-57cc5ab1a604","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213733.3523502} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"890224a2d2ea6bb4c391312264e732bc","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"890224a2d2ea6bb4c391312264e732bc"} gateway-1 | {"time_local":"17/Jul/2024:10:55:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/19f0c019-6c9c-4bcc-a4e9-64e739988a99? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"890224a2d2ea6bb4c391312264e732bc"} device-1 | {"level":"info","message":"GET /devices/19f0c019-6c9c-4bcc-a4e9-64e739988a99? 200 17ms","method":"GET","requestID":"890224a2d2ea6bb4c391312264e732bc","responseTime":17,"status":200,"url":"/devices/19f0c019-6c9c-4bcc-a4e9-64e739988a99?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzczM30.S6NBJ2FSFoGYW0WhPzERemLUb_zcw4jAkOH0uasQua0","level":"info","message":"auth send jwt","requestID":"b93c8dbba5685290c5a9c95137df38be"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"b93c8dbba5685290c5a9c95137df38be","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"b93c8dbba5685290c5a9c95137df38be"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":650,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:33Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":650,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.351814,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:33Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"b93c8dbba5685290c5a9c95137df38be","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213733,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzczM30.S6NBJ2FSFoGYW0WhPzERemLUb_zcw4jAkOH0uasQua0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b93c8dbba5685290c5a9c95137df38be","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d564f71b-9dab-459b-a5b9-ce9844a7d823"},"level":"info","message":"Attempting to run experiment","requestID":"b93c8dbba5685290c5a9c95137df38be"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d564f71b-9dab-459b-a5b9-ce9844a7d823"},"level":"info","message":"Attempting to book experiment","requestID":"b93c8dbba5685290c5a9c95137df38be"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d564f71b-9dab-459b-a5b9-ce9844a7d823"},"level":"info","message":"Successfully booked experiment","requestID":"b93c8dbba5685290c5a9c95137df38be"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"17213730-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"17218550-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":651,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:33Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":651,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.795083,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:33Z"} authorization-1 | {"client_addr":"127.0.0.1:51506","level":"info","msg":"Received request.","req_id":652,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/83bc0d3e-d882-4ef1-87eb-b98c2984adc8","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"17213730-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/83bc0d3e-d882-4ef1-87eb-b98c2984adc8","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213733,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzczM30.S6NBJ2FSFoGYW0WhPzERemLUb_zcw4jAkOH0uasQua0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"17213730-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51506","level":"info","msg":"Sent response.","req_id":652,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.824329,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/19f0c019-6c9c-4bcc-a4e9-64e739988a99","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"17218550-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/19f0c019-6c9c-4bcc-a4e9-64e739988a99","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213733,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzczM30.S6NBJ2FSFoGYW0WhPzERemLUb_zcw4jAkOH0uasQua0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"17218550-442b-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F83bc0d3e-d882-4ef1-87eb-b98c2984adc8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F83bc0d3e-d882-4ef1-87eb-b98c2984adc8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:31.209450178Z"}]},"request_id":"8e40a524-d333-4537-889c-ec6056d57219","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213733.4227872} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"17213730-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F19f0c019-6c9c-4bcc-a4e9-64e739988a99","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F19f0c019-6c9c-4bcc-a4e9-64e739988a99","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:31.260199275Z"}]},"request_id":"0d6ef836-3307-4cfe-923b-3803e1dcc4c3","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213733.4241638} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"17218550-442b-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"17213730-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/83bc0d3e-d882-4ef1-87eb-b98c2984adc8? 200 20ms","method":"GET","requestID":"17213730-442b-11ef-8685-a1e9f27e6f28","responseTime":20,"status":200,"url":"/devices/83bc0d3e-d882-4ef1-87eb-b98c2984adc8?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"17218550-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/19f0c019-6c9c-4bcc-a4e9-64e739988a99? 200 18ms","method":"GET","requestID":"17218550-442b-11ef-8685-a1e9f27e6f28","responseTime":18,"status":200,"url":"/devices/19f0c019-6c9c-4bcc-a4e9-64e739988a99?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d564f71b-9dab-459b-a5b9-ce9844a7d823"},"level":"info","message":"Setting up experiment","requestID":"b93c8dbba5685290c5a9c95137df38be"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d564f71b-9dab-459b-a5b9-ce9844a7d823"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"b93c8dbba5685290c5a9c95137df38be"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d564f71b-9dab-459b-a5b9-ce9844a7d823"},"level":"info","message":"Successfully locked booking for experiment","requestID":"b93c8dbba5685290c5a9c95137df38be"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d564f71b-9dab-459b-a5b9-ce9844a7d823"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"b93c8dbba5685290c5a9c95137df38be"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d564f71b-9dab-459b-a5b9-ce9844a7d823"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"b93c8dbba5685290c5a9c95137df38be"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d564f71b-9dab-459b-a5b9-ce9844a7d823"},"level":"info","message":"Attempting to update booking for experiment","requestID":"b93c8dbba5685290c5a9c95137df38be"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d564f71b-9dab-459b-a5b9-ce9844a7d823"},"level":"info","message":"Successfully updated booking for experiment","requestID":"b93c8dbba5685290c5a9c95137df38be"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d564f71b-9dab-459b-a5b9-ce9844a7d823"},"level":"info","message":"Successfully set up experiment","requestID":"b93c8dbba5685290c5a9c95137df38be"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"172dba50-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"172e0870-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"172e5690-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":653,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:33Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":653,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.935234,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:33Z"} authorization-1 | {"client_addr":"127.0.0.1:51506","level":"info","msg":"Received request.","req_id":654,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:33Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d564f71b-9dab-459b-a5b9-ce9844a7d823"},"level":"info","message":"Successfully running experiment","requestID":"b93c8dbba5685290c5a9c95137df38be"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/83bc0d3e-d882-4ef1-87eb-b98c2984adc8","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"172dba50-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/83bc0d3e-d882-4ef1-87eb-b98c2984adc8","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213733,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzczM30.S6NBJ2FSFoGYW0WhPzERemLUb_zcw4jAkOH0uasQua0"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"172dba50-442b-11ef-8685-a1e9f27e6f28","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51506","level":"info","msg":"Sent response.","req_id":654,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.86919,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:33Z"} authorization-1 | {"client_addr":"127.0.0.1:51510","level":"info","msg":"Received request.","req_id":655,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/19f0c019-6c9c-4bcc-a4e9-64e739988a99","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"172e0870-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/19f0c019-6c9c-4bcc-a4e9-64e739988a99","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213733,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzczM30.S6NBJ2FSFoGYW0WhPzERemLUb_zcw4jAkOH0uasQua0"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"172e0870-442b-11ef-8685-a1e9f27e6f28","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51510","level":"info","msg":"Sent response.","req_id":655,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.825849,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:33Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F83bc0d3e-d882-4ef1-87eb-b98c2984adc8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"957ca3ff-99ed-4413-9ca3-6125dea424b1","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213733.5067918} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/83bc0d3e-d882-4ef1-87eb-b98c2984adc8","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"172e5690-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/83bc0d3e-d882-4ef1-87eb-b98c2984adc8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"172e5690-442b-11ef-8685-a1e9f27e6f28","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F83bc0d3e-d882-4ef1-87eb-b98c2984adc8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F83bc0d3e-d882-4ef1-87eb-b98c2984adc8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:31.209450178Z"}]},"request_id":"36c7272e-de8b-43dc-93fe-3f085cd4024d","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213733.5119905} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"172dba50-442b-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F19f0c019-6c9c-4bcc-a4e9-64e739988a99","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F19f0c019-6c9c-4bcc-a4e9-64e739988a99","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:31.260199275Z"}]},"request_id":"513e0e84-b30e-411a-95ea-e1aa89a92dc5","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213733.5157082} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"172e5690-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/83bc0d3e-d882-4ef1-87eb-b98c2984adc8/signaling 200 19ms","method":"POST","requestID":"172e5690-442b-11ef-8685-a1e9f27e6f28","responseTime":19,"status":200,"url":"/devices/83bc0d3e-d882-4ef1-87eb-b98c2984adc8/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"172e0870-442b-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1731d900-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"172dba50-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/83bc0d3e-d882-4ef1-87eb-b98c2984adc8? 200 32ms","method":"GET","requestID":"172dba50-442b-11ef-8685-a1e9f27e6f28","responseTime":32,"status":200,"url":"/devices/83bc0d3e-d882-4ef1-87eb-b98c2984adc8?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"172e0870-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/19f0c019-6c9c-4bcc-a4e9-64e739988a99? 200 32ms","method":"GET","requestID":"172e0870-442b-11ef-8685-a1e9f27e6f28","responseTime":32,"status":200,"url":"/devices/19f0c019-6c9c-4bcc-a4e9-64e739988a99?"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":656,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:33Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd564f71b-9dab-459b-a5b9-ce9844a7d823#owner@http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd564f71b-9dab-459b-a5b9-ce9844a7d823","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"77d87144-d0cf-455a-b981-5d27573cf115","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213733.527915} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8609ac26-3707-4ff9-a996-5b3fde50dca0","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213733.5283926} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F19f0c019-6c9c-4bcc-a4e9-64e739988a99","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6d2c4a7d-02de-479a-a0fe-2f6d50f9a268","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213733.528596} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"b93c8dbba5685290c5a9c95137df38be","responseTime":23,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":656,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.94526,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:33Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"17335fa0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/19f0c019-6c9c-4bcc-a4e9-64e739988a99","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1731d900-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/19f0c019-6c9c-4bcc-a4e9-64e739988a99","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"1731d900-442b-11ef-8685-a1e9f27e6f28","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":657,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:33Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1731d900-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/19f0c019-6c9c-4bcc-a4e9-64e739988a99/signaling 200 16ms","method":"POST","requestID":"1731d900-442b-11ef-8685-a1e9f27e6f28","responseTime":16,"status":200,"url":"/devices/19f0c019-6c9c-4bcc-a4e9-64e739988a99/signaling"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F83bc0d3e-d882-4ef1-87eb-b98c2984adc8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"63d47baf-2a32-4ed6-ba30-e1b87d432ca8","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213733.5374835} experiment-1 | {"data":{"experiment":"http://localhost/experiments/d564f71b-9dab-459b-a5b9-ce9844a7d823","user":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"b93c8dbba5685290c5a9c95137df38be"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":657,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.306512,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:33Z"} gateway-1 | {"time_local":"17/Jul/2024:10:55:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1215","request_time":"0.179","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b93c8dbba5685290c5a9c95137df38be"} experiment-1 | {"level":"info","message":"POST /experiments? 201 171ms","method":"POST","requestID":"b93c8dbba5685290c5a9c95137df38be","responseTime":171,"status":201,"url":"/experiments?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/83bc0d3e-d882-4ef1-87eb-b98c2984adc8","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"17335fa0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/83bc0d3e-d882-4ef1-87eb-b98c2984adc8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"17335fa0-442b-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"17335fa0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/83bc0d3e-d882-4ef1-87eb-b98c2984adc8/signaling 200 14ms","method":"POST","requestID":"17335fa0-442b-11ef-8685-a1e9f27e6f28","responseTime":14,"status":200,"url":"/devices/83bc0d3e-d882-4ef1-87eb-b98c2984adc8/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzczM30.S6NBJ2FSFoGYW0WhPzERemLUb_zcw4jAkOH0uasQua0","level":"info","message":"auth send jwt","requestID":"e17367ee417641c6fd974ab807da6a20"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e17367ee417641c6fd974ab807da6a20","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e17367ee417641c6fd974ab807da6a20"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"17361ec0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":658,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:33Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":658,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.769599,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:33Z"} authorization-1 | {"client_addr":"127.0.0.1:51506","level":"info","msg":"Received request.","req_id":659,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/83bc0d3e-d882-4ef1-87eb-b98c2984adc8","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"e17367ee417641c6fd974ab807da6a20","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/83bc0d3e-d882-4ef1-87eb-b98c2984adc8","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213733,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzczM30.S6NBJ2FSFoGYW0WhPzERemLUb_zcw4jAkOH0uasQua0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e17367ee417641c6fd974ab807da6a20","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F19f0c019-6c9c-4bcc-a4e9-64e739988a99","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ef00946d-5c1e-4460-a1ca-5f79ffab9dc4","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213733.5537374} authorization-1 | {"client_addr":"127.0.0.1:51506","level":"info","msg":"Sent response.","req_id":659,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.448699,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/19f0c019-6c9c-4bcc-a4e9-64e739988a99","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"17361ec0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/19f0c019-6c9c-4bcc-a4e9-64e739988a99","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"17361ec0-442b-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F83bc0d3e-d882-4ef1-87eb-b98c2984adc8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F83bc0d3e-d882-4ef1-87eb-b98c2984adc8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:31.209450178Z"}]},"request_id":"9cbb9031-f68c-4597-8732-d2c215fd86fe","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213733.5563715} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e17367ee417641c6fd974ab807da6a20","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"17361ec0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/19f0c019-6c9c-4bcc-a4e9-64e739988a99/signaling 200 14ms","method":"POST","requestID":"17361ec0-442b-11ef-8685-a1e9f27e6f28","responseTime":14,"status":200,"url":"/devices/19f0c019-6c9c-4bcc-a4e9-64e739988a99/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e17367ee417641c6fd974ab807da6a20"} gateway-1 | {"time_local":"17/Jul/2024:10:55:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/83bc0d3e-d882-4ef1-87eb-b98c2984adc8? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e17367ee417641c6fd974ab807da6a20"} device-1 | {"level":"info","message":"GET /devices/83bc0d3e-d882-4ef1-87eb-b98c2984adc8? 200 17ms","method":"GET","requestID":"e17367ee417641c6fd974ab807da6a20","responseTime":17,"status":200,"url":"/devices/83bc0d3e-d882-4ef1-87eb-b98c2984adc8?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d564f71b-9dab-459b-a5b9-ce9844a7d823"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"b93c8dbba5685290c5a9c95137df38be"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d564f71b-9dab-459b-a5b9-ce9844a7d823"},"level":"info","message":"Building connection plan","requestID":"b93c8dbba5685290c5a9c95137df38be"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"4daaeeac-fa4e-4074-b030-451de0070b29"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"b1c1f95c-5f38-4ab0-83f7-9d42078ea89f"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"f1141db4-033f-44e8-9936-e7b0a0b235fd"}]},"level":"info","message":"Built pairwise service configurations","requestID":"b93c8dbba5685290c5a9c95137df38be"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/19f0c019-6c9c-4bcc-a4e9-64e739988a99"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/83bc0d3e-d882-4ef1-87eb-b98c2984adc8"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"b93c8dbba5685290c5a9c95137df38be"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"1738dde0-442b-11ef-8685-a1e9f27e6f28"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzczM30.S6NBJ2FSFoGYW0WhPzERemLUb_zcw4jAkOH0uasQua0","level":"info","message":"auth send jwt","requestID":"da0e137a5d101da4b2fdf09d8bb52d3e"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":660,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:33Z"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"da0e137a5d101da4b2fdf09d8bb52d3e","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"da0e137a5d101da4b2fdf09d8bb52d3e"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":660,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.839185,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:33Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1738dde0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213733,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzczM30.S6NBJ2FSFoGYW0WhPzERemLUb_zcw4jAkOH0uasQua0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1738dde0-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51506","level":"info","msg":"Received request.","req_id":661,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:33Z"} authorization-1 | {"client_addr":"127.0.0.1:51506","level":"info","msg":"Sent response.","req_id":661,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.154801,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/19f0c019-6c9c-4bcc-a4e9-64e739988a99","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"da0e137a5d101da4b2fdf09d8bb52d3e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/19f0c019-6c9c-4bcc-a4e9-64e739988a99","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213733,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzczM30.S6NBJ2FSFoGYW0WhPzERemLUb_zcw4jAkOH0uasQua0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"da0e137a5d101da4b2fdf09d8bb52d3e","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"275a3bdd-aea0-4341-87d4-fac8750b55ce","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213733.581438} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"60d96f70-b298-4f3d-a6a3-d71e3fc52544","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213733.5817082} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F19f0c019-6c9c-4bcc-a4e9-64e739988a99","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F19f0c019-6c9c-4bcc-a4e9-64e739988a99","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:31.260199275Z"}]},"request_id":"59f052d5-64b3-4679-ac6a-029f570c4f53","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213733.5827029} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"1738dde0-442b-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/relations/update"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"da0e137a5d101da4b2fdf09d8bb52d3e","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"da0e137a5d101da4b2fdf09d8bb52d3e"} device-1 | {"level":"info","message":"GET /devices/19f0c019-6c9c-4bcc-a4e9-64e739988a99? 200 20ms","method":"GET","requestID":"da0e137a5d101da4b2fdf09d8bb52d3e","responseTime":20,"status":200,"url":"/devices/19f0c019-6c9c-4bcc-a4e9-64e739988a99?"} gateway-1 | {"time_local":"17/Jul/2024:10:55:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/19f0c019-6c9c-4bcc-a4e9-64e739988a99? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"da0e137a5d101da4b2fdf09d8bb52d3e"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"1738dde0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"1738dde0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/16186f00-2ce1-4aa3-8312-cbab5b1d0bd7'","requestID":"1738dde0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/16186f00-2ce1-4aa3-8312-cbab5b1d0bd7'","requestID":"1738dde0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"1738dde0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 34ms","method":"POST","requestID":"1738dde0-442b-11ef-8685-a1e9f27e6f28","responseTime":34,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"1738dde0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/16186f00-2ce1-4aa3-8312-cbab5b1d0bd7","device":"83bc0d3e-d882-4ef1-87eb-b98c2984adc8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":true} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d564f71b-9dab-459b-a5b9-ce9844a7d823"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"b93c8dbba5685290c5a9c95137df38be"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"17427ad0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":662,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:33Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F83bc0d3e-d882-4ef1-87eb-b98c2984adc8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1c3e0d22-60a2-47b1-a8c4-e664cb4cc926","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213733.6338644} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":662,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.69492,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/83bc0d3e-d882-4ef1-87eb-b98c2984adc8","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"17427ad0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/83bc0d3e-d882-4ef1-87eb-b98c2984adc8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"17427ad0-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"17427ad0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/83bc0d3e-d882-4ef1-87eb-b98c2984adc8/signaling 200 9ms","method":"POST","requestID":"17427ad0-442b-11ef-8685-a1e9f27e6f28","responseTime":9,"status":200,"url":"/devices/83bc0d3e-d882-4ef1-87eb-b98c2984adc8/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"17442880-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"device":"83bc0d3e-d882-4ef1-87eb-b98c2984adc8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"83bc0d3e-d882-4ef1-87eb-b98c2984adc8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":663,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:33Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F19f0c019-6c9c-4bcc-a4e9-64e739988a99","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"045d95f9-042a-4c81-816e-20939c768eb5","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213733.6456869} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":663,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.766094,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/19f0c019-6c9c-4bcc-a4e9-64e739988a99","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"17442880-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/19f0c019-6c9c-4bcc-a4e9-64e739988a99","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"17442880-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"content":{"sdp":"v=0\r\no=- 2830636097380543315 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:2EaQ\r\na=ice-pwd:WvyCr6F+im86mF7NI6RRpg38\r\na=ice-options:trickle\r\na=fingerprint:sha-256 2B:D2:84:17:C3:CC:7D:0E:35:7E:DE:AD:DB:9B:AD:44:F8:5C:40:F0:72:FB:A1:D2:2D:4A:C6:44:83:77:0B:74\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"83bc0d3e-d882-4ef1-87eb-b98c2984adc8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"17442880-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/19f0c019-6c9c-4bcc-a4e9-64e739988a99/signaling 200 16ms","method":"POST","requestID":"17442880-442b-11ef-8685-a1e9f27e6f28","responseTime":16,"status":200,"url":"/devices/19f0c019-6c9c-4bcc-a4e9-64e739988a99/signaling"} device-1 | {"device":"83bc0d3e-d882-4ef1-87eb-b98c2984adc8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"19f0c019-6c9c-4bcc-a4e9-64e739988a99","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"16186f00-2ce1-4aa3-8312-cbab5b1d0bd7","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"19f0c019-6c9c-4bcc-a4e9-64e739988a99","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"19f0c019-6c9c-4bcc-a4e9-64e739988a99","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"19f0c019-6c9c-4bcc-a4e9-64e739988a99","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"19f0c019-6c9c-4bcc-a4e9-64e739988a99","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/16186f00-2ce1-4aa3-8312-cbab5b1d0bd7' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"16186f00-2ce1-4aa3-8312-cbab5b1d0bd7","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1055cbcf96cf1cf61b380640a9fdf828","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"1055cbcf96cf1cf61b380640a9fdf828","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/19f0c019-6c9c-4bcc-a4e9-64e739988a99"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/83bc0d3e-d882-4ef1-87eb-b98c2984adc8"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/16186f00-2ce1-4aa3-8312-cbab5b1d0bd7"}}},"level":"info","message":"received a callback","requestID":"1055cbcf96cf1cf61b380640a9fdf828"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 9ms","method":"POST","requestID":"1055cbcf96cf1cf61b380640a9fdf828","responseTime":9,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:55:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch","requestID":"1055cbcf96cf1cf61b380640a9fdf828"} device-1 | {"content":{"candidate":"candidate:1955133587 1 udp 2113937151 1edaf9fe-d1d6-4a3d-969b-a1b268422326.local 46326 typ host generation 0 ufrag 2EaQ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"83bc0d3e-d882-4ef1-87eb-b98c2984adc8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3886242176 1 udp 1677729535 141.24.211.56 46326 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag 2EaQ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"83bc0d3e-d882-4ef1-87eb-b98c2984adc8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1502601842 1 udp 33562623 141.24.210.113 51127 typ relay raddr 141.24.211.56 rport 46326 generation 0 ufrag 2EaQ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"83bc0d3e-d882-4ef1-87eb-b98c2984adc8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"83bc0d3e-d882-4ef1-87eb-b98c2984adc8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/83bc0d3e-d882-4ef1-87eb-b98c2984adc8'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/83bc0d3e-d882-4ef1-87eb-b98c2984adc8'"} device-1 | {"data":{"peerconnection":"16186f00-2ce1-4aa3-8312-cbab5b1d0bd7","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"19f0c019-6c9c-4bcc-a4e9-64e739988a99","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"83bc0d3e-d882-4ef1-87eb-b98c2984adc8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"19f0c019-6c9c-4bcc-a4e9-64e739988a99","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"16186f00-2ce1-4aa3-8312-cbab5b1d0bd7","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/16186f00-2ce1-4aa3-8312-cbab5b1d0bd7' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"16186f00-2ce1-4aa3-8312-cbab5b1d0bd7","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"535abc635c64213bfc0fffdd5cd75d24","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"535abc635c64213bfc0fffdd5cd75d24","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/19f0c019-6c9c-4bcc-a4e9-64e739988a99"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/83bc0d3e-d882-4ef1-87eb-b98c2984adc8"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/16186f00-2ce1-4aa3-8312-cbab5b1d0bd7"}}},"level":"info","message":"received a callback","requestID":"535abc635c64213bfc0fffdd5cd75d24"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"18811550-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":664,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:35Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F16186f00-2ce1-4aa3-8312-cbab5b1d0bd7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"11344700-4fde-4486-ae4a-f35a9c93944c","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213735.722971} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":664,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.033993,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/16186f00-2ce1-4aa3-8312-cbab5b1d0bd7","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"18811550-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/16186f00-2ce1-4aa3-8312-cbab5b1d0bd7","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"18811550-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"18811550-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /peerconnections/16186f00-2ce1-4aa3-8312-cbab5b1d0bd7 200 10ms","method":"GET","requestID":"18811550-442b-11ef-8685-a1e9f27e6f28","responseTime":10,"status":200,"url":"/peerconnections/16186f00-2ce1-4aa3-8312-cbab5b1d0bd7"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 37ms","method":"POST","requestID":"535abc635c64213bfc0fffdd5cd75d24","responseTime":37,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:55:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.041","http_referrer":"","http_user_agent":"node-fetch","requestID":"535abc635c64213bfc0fffdd5cd75d24"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1885d040-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":665,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:35Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F19f0c019-6c9c-4bcc-a4e9-64e739988a99","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5fe0390d-cd7b-4831-96d8-c15a296772c3","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213735.7533228} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":665,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.887928,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:35Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/19f0c019-6c9c-4bcc-a4e9-64e739988a99","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1885d040-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/19f0c019-6c9c-4bcc-a4e9-64e739988a99","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1885d040-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1885d040-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/19f0c019-6c9c-4bcc-a4e9-64e739988a99/signaling 200 10ms","method":"POST","requestID":"1885d040-442b-11ef-8685-a1e9f27e6f28","responseTime":10,"status":200,"url":"/devices/19f0c019-6c9c-4bcc-a4e9-64e739988a99/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1887cc10-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":666,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:35Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F83bc0d3e-d882-4ef1-87eb-b98c2984adc8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"572075d6-696b-4b1d-af43-9cf9e2a82ae9","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213735.7673512} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":666,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.241253,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:35Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/83bc0d3e-d882-4ef1-87eb-b98c2984adc8","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1887cc10-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/83bc0d3e-d882-4ef1-87eb-b98c2984adc8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"1887cc10-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1887cc10-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/83bc0d3e-d882-4ef1-87eb-b98c2984adc8/signaling 200 12ms","method":"POST","requestID":"1887cc10-442b-11ef-8685-a1e9f27e6f28","responseTime":12,"status":200,"url":"/devices/83bc0d3e-d882-4ef1-87eb-b98c2984adc8/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzczNX0.6baY4OwaejmvJBf1zRoD4bA8DkngFPxHCyZhyaCQLeU","level":"info","message":"auth send jwt","requestID":"a0936fcd2b4156ef46f4dfb3ef3c3806"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"a0936fcd2b4156ef46f4dfb3ef3c3806","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/d564f71b-9dab-459b-a5b9-ce9844a7d823","requestID":"a0936fcd2b4156ef46f4dfb3ef3c3806"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":667,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:35Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":667,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.163087,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/d564f71b-9dab-459b-a5b9-ce9844a7d823","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"a0936fcd2b4156ef46f4dfb3ef3c3806","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:http://localhost/experiments/d564f71b-9dab-459b-a5b9-ce9844a7d823","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213735,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzczNX0.6baY4OwaejmvJBf1zRoD4bA8DkngFPxHCyZhyaCQLeU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a0936fcd2b4156ef46f4dfb3ef3c3806","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/d564f71b-9dab-459b-a5b9-ce9844a7d823","requestID":"a0936fcd2b4156ef46f4dfb3ef3c3806"} gateway-1 | {"time_local":"17/Jul/2024:10:55:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/d564f71b-9dab-459b-a5b9-ce9844a7d823 HTTP/1.1","status": "200","body_bytes_sent":"1288","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a0936fcd2b4156ef46f4dfb3ef3c3806"} experiment-1 | {"level":"info","message":"GET /experiments/d564f71b-9dab-459b-a5b9-ce9844a7d823 200 15ms","method":"GET","requestID":"a0936fcd2b4156ef46f4dfb3ef3c3806","responseTime":15,"status":200,"url":"/experiments/d564f71b-9dab-459b-a5b9-ce9844a7d823"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzczNX0.6baY4OwaejmvJBf1zRoD4bA8DkngFPxHCyZhyaCQLeU","level":"info","message":"auth send jwt","requestID":"bb1c3a299e48f73e2bac93c8436a44ac"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"bb1c3a299e48f73e2bac93c8436a44ac","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/d564f71b-9dab-459b-a5b9-ce9844a7d823","requestID":"bb1c3a299e48f73e2bac93c8436a44ac"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":668,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:35Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":668,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.178807,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:35Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/d564f71b-9dab-459b-a5b9-ce9844a7d823","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"bb1c3a299e48f73e2bac93c8436a44ac","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:http://localhost/experiments/d564f71b-9dab-459b-a5b9-ce9844a7d823","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213735,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzczNX0.6baY4OwaejmvJBf1zRoD4bA8DkngFPxHCyZhyaCQLeU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"bb1c3a299e48f73e2bac93c8436a44ac","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d564f71b-9dab-459b-a5b9-ce9844a7d823"},"level":"info","message":"Attempting to finish experiment","requestID":"bb1c3a299e48f73e2bac93c8436a44ac"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"1894c460-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":669,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:35Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":669,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.094961,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:35Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/16186f00-2ce1-4aa3-8312-cbab5b1d0bd7","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1894c460-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"peerconnection:http://localhost/peerconnections/16186f00-2ce1-4aa3-8312-cbab5b1d0bd7","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213735,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzczNX0.6baY4OwaejmvJBf1zRoD4bA8DkngFPxHCyZhyaCQLeU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1894c460-442b-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/16186f00-2ce1-4aa3-8312-cbab5b1d0bd7","device":"83bc0d3e-d882-4ef1-87eb-b98c2984adc8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"19f0c019-6c9c-4bcc-a4e9-64e739988a99","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"19f0c019-6c9c-4bcc-a4e9-64e739988a99","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"19f0c019-6c9c-4bcc-a4e9-64e739988a99","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/16186f00-2ce1-4aa3-8312-cbab5b1d0bd7' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/16186f00-2ce1-4aa3-8312-cbab5b1d0bd7' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"16186f00-2ce1-4aa3-8312-cbab5b1d0bd7","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F16186f00-2ce1-4aa3-8312-cbab5b1d0bd7': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F16186f00-2ce1-4aa3-8312-cbab5b1d0bd7","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]},"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":null},"raw_response":{},"request_id":"306a8313-a37f-4b28-9df2-46480375e975","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213735.8703687} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"95cbea08-e52a-417a-85c5-b41ac86df45e","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213735.8708146} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d295dfe0e0e4c5a83d291377bfb500e9","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"d295dfe0e0e4c5a83d291377bfb500e9","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"1894c460-442b-11ef-8685-a1e9f27e6f28","responseTime":12,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8606344255b22696531d69af22dcabcb","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/19f0c019-6c9c-4bcc-a4e9-64e739988a99"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/83bc0d3e-d882-4ef1-87eb-b98c2984adc8"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/16186f00-2ce1-4aa3-8312-cbab5b1d0bd7"}}},"level":"info","message":"received a callback","requestID":"d295dfe0e0e4c5a83d291377bfb500e9"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"8606344255b22696531d69af22dcabcb","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/19f0c019-6c9c-4bcc-a4e9-64e739988a99"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/83bc0d3e-d882-4ef1-87eb-b98c2984adc8"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/16186f00-2ce1-4aa3-8312-cbab5b1d0bd7"}}},"level":"info","message":"received a callback","requestID":"8606344255b22696531d69af22dcabcb"} device-1 | {"data":{"peerconnection":"16186f00-2ce1-4aa3-8312-cbab5b1d0bd7","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"1894c460-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"DELETE /peerconnections/16186f00-2ce1-4aa3-8312-cbab5b1d0bd7 204 49ms","method":"DELETE","requestID":"1894c460-442b-11ef-8685-a1e9f27e6f28","responseTime":49,"status":204,"url":"/peerconnections/16186f00-2ce1-4aa3-8312-cbab5b1d0bd7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d564f71b-9dab-459b-a5b9-ce9844a7d823"},"level":"info","message":"Successfully finished experiment","requestID":"bb1c3a299e48f73e2bac93c8436a44ac"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"189f99d0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":670,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:35Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F19f0c019-6c9c-4bcc-a4e9-64e739988a99","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7783797f-9459-49cc-a4fa-4cf4239adb95","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213735.9253037} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":670,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.895268,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:35Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/19f0c019-6c9c-4bcc-a4e9-64e739988a99","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"189f99d0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/19f0c019-6c9c-4bcc-a4e9-64e739988a99","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"189f99d0-442b-11ef-8685-a1e9f27e6f28","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd564f71b-9dab-459b-a5b9-ce9844a7d823': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd564f71b-9dab-459b-a5b9-ce9844a7d823","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]},"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":null},"raw_response":{},"request_id":"60058a68-5739-404e-b249-ffdaff217b9f","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213735.9314692} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"189f99d0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e33b1900-764d-4aee-b258-4ce53d3e0929","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213735.931849} device-1 | {"level":"info","message":"POST /devices/19f0c019-6c9c-4bcc-a4e9-64e739988a99/signaling 200 15ms","method":"POST","requestID":"189f99d0-442b-11ef-8685-a1e9f27e6f28","responseTime":15,"status":200,"url":"/devices/19f0c019-6c9c-4bcc-a4e9-64e739988a99/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"bb1c3a299e48f73e2bac93c8436a44ac","responseTime":18,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"18a258f0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":671,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:35Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F83bc0d3e-d882-4ef1-87eb-b98c2984adc8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"83b0c54d-68a2-4ae0-9db1-d12c229e4c4c","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213735.9419668} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":671,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.583869,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:35Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/83bc0d3e-d882-4ef1-87eb-b98c2984adc8","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"18a258f0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/83bc0d3e-d882-4ef1-87eb-b98c2984adc8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"18a258f0-442b-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"18a258f0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/83bc0d3e-d882-4ef1-87eb-b98c2984adc8/signaling 200 12ms","method":"POST","requestID":"18a258f0-442b-11ef-8685-a1e9f27e6f28","responseTime":12,"status":200,"url":"/devices/83bc0d3e-d882-4ef1-87eb-b98c2984adc8/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/d564f71b-9dab-459b-a5b9-ce9844a7d823","requestID":"bb1c3a299e48f73e2bac93c8436a44ac"} gateway-1 | {"time_local":"17/Jul/2024:10:55:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/d564f71b-9dab-459b-a5b9-ce9844a7d823 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.177","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bb1c3a299e48f73e2bac93c8436a44ac"} gateway-1 | {"time_local":"17/Jul/2024:10:55:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3192","request_time":"4.190","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"91b14ff446e7076a9ad3ce8234df8da7"} experiment-1 | {"level":"info","message":"DELETE /experiments/d564f71b-9dab-459b-a5b9-ce9844a7d823 204 173ms","method":"DELETE","requestID":"bb1c3a299e48f73e2bac93c8436a44ac","responseTime":173,"status":204,"url":"/experiments/d564f71b-9dab-459b-a5b9-ce9844a7d823"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 132ms","method":"POST","requestID":"d295dfe0e0e4c5a83d291377bfb500e9","responseTime":132,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:55:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.136","http_referrer":"","http_user_agent":"node-fetch","requestID":"d295dfe0e0e4c5a83d291377bfb500e9"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 129ms","method":"POST","requestID":"8606344255b22696531d69af22dcabcb","responseTime":129,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:55:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.137","http_referrer":"","http_user_agent":"node-fetch","requestID":"8606344255b22696531d69af22dcabcb"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzczNn0.EdiuxomC7y3gvtjtVxExwS2L6v6TBPLkbHY2dxnAPac","level":"info","message":"auth send jwt","requestID":"86f60fb241df2ea72e11c867c424e396"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"86f60fb241df2ea72e11c867c424e396","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"86f60fb241df2ea72e11c867c424e396"} gateway-1 | {"time_local":"17/Jul/2024:10:55:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2704","request_time":"2.724","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"66d951507ccdea032b22d645046745e0"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":672,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:36Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":672,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.843057,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:36Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"86f60fb241df2ea72e11c867c424e396","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213736,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzczNn0.EdiuxomC7y3gvtjtVxExwS2L6v6TBPLkbHY2dxnAPac"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"86f60fb241df2ea72e11c867c424e396","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/19f0c019-6c9c-4bcc-a4e9-64e739988a99' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ddf8c69-f56e-4159-84c6-a67fd7cdfc50","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"e8dc7425-c374-4c15-a58b-accd30ccb86c","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213736.0328727} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"86f60fb241df2ea72e11c867c424e396","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/83bc0d3e-d882-4ef1-87eb-b98c2984adc8' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3aad7832-7727-4db5-af92-059bb04aebc5","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213736.0390513} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"86f60fb241df2ea72e11c867c424e396","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ddf8c69-f56e-4159-84c6-a67fd7cdfc50","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"4d9ec921-3356-432a-aa84-57468986c4d3","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213736.0473685} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f1d1c179-1b84-47d2-a6f1-24620154539c","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213736.0476892} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"86f60fb241df2ea72e11c867c424e396","responseTime":12,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ddf8c69-f56e-4159-84c6-a67fd7cdfc50","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ddf8c69-f56e-4159-84c6-a67fd7cdfc50","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:36.047336013Z"}]},"request_id":"d91d657c-8a56-42b1-9535-5ffbac8fcd9d","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213736.052194} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"86f60fb241df2ea72e11c867c424e396","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"86f60fb241df2ea72e11c867c424e396"} gateway-1 | {"time_local":"17/Jul/2024:10:55:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"86f60fb241df2ea72e11c867c424e396"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"86f60fb241df2ea72e11c867c424e396","responseTime":44,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzczNn0.EdiuxomC7y3gvtjtVxExwS2L6v6TBPLkbHY2dxnAPac","level":"info","message":"auth send jwt","requestID":"0abbf9656e94518241656e899e38899d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"0abbf9656e94518241656e899e38899d","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"0abbf9656e94518241656e899e38899d"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":673,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:36Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":673,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.793753,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:36Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0abbf9656e94518241656e899e38899d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213736,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzczNn0.EdiuxomC7y3gvtjtVxExwS2L6v6TBPLkbHY2dxnAPac"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0abbf9656e94518241656e899e38899d","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb51416d5-cdd6-4ea9-8e3d-66a3e9a285be","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"9980b757-f5f5-4743-b8df-c59028d97f74","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213736.0816584} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"0abbf9656e94518241656e899e38899d","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cce5f526-8c49-4216-b11c-4d30bf19778a","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213736.0867684} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"0abbf9656e94518241656e899e38899d","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb51416d5-cdd6-4ea9-8e3d-66a3e9a285be","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"fa61aaf0-c576-4cf3-81f1-183822872bee","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213736.0981846} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7a3a967c-6a45-49d5-8a56-c90688a97994","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213736.0982938} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"0abbf9656e94518241656e899e38899d","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb51416d5-cdd6-4ea9-8e3d-66a3e9a285be","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb51416d5-cdd6-4ea9-8e3d-66a3e9a285be","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:36.098153981Z"}]},"request_id":"5b1f8823-3283-41a3-8e91-6581b470d862","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213736.1021314} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"0abbf9656e94518241656e899e38899d","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"0abbf9656e94518241656e899e38899d"} gateway-1 | {"time_local":"17/Jul/2024:10:55:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0abbf9656e94518241656e899e38899d"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"0abbf9656e94518241656e899e38899d","responseTime":44,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzczNn0.EdiuxomC7y3gvtjtVxExwS2L6v6TBPLkbHY2dxnAPac","level":"info","message":"auth send jwt","requestID":"1ea63009a30eb24aa4369a2fd9e7366c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1ea63009a30eb24aa4369a2fd9e7366c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"1ea63009a30eb24aa4369a2fd9e7366c"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":674,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:36Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":674,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.267174,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:36Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ddf8c69-f56e-4159-84c6-a67fd7cdfc50","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1ea63009a30eb24aa4369a2fd9e7366c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/3ddf8c69-f56e-4159-84c6-a67fd7cdfc50","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213736,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzczNn0.EdiuxomC7y3gvtjtVxExwS2L6v6TBPLkbHY2dxnAPac"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1ea63009a30eb24aa4369a2fd9e7366c","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ddf8c69-f56e-4159-84c6-a67fd7cdfc50","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ddf8c69-f56e-4159-84c6-a67fd7cdfc50","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:36.047336013Z"}]},"request_id":"7001e676-2241-4bad-9df5-820c52d3859f","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213736.601307} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1ea63009a30eb24aa4369a2fd9e7366c","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0db6c4ee-5319-4f0c-a299-c3b25f31787a","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213736.6084218} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"1ea63009a30eb24aa4369a2fd9e7366c","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ddf8c69-f56e-4159-84c6-a67fd7cdfc50","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ddf8c69-f56e-4159-84c6-a67fd7cdfc50","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:36.047336013Z"}]},"request_id":"8f3d5c5c-fc7a-4c2e-bb32-bc8936227cb5","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213736.621036} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"1ea63009a30eb24aa4369a2fd9e7366c","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"1ea63009a30eb24aa4369a2fd9e7366c"} device-1 | {"level":"info","message":"PATCH /devices/3ddf8c69-f56e-4159-84c6-a67fd7cdfc50 200 36ms","method":"PATCH","requestID":"1ea63009a30eb24aa4369a2fd9e7366c","responseTime":36,"status":200,"url":"/devices/3ddf8c69-f56e-4159-84c6-a67fd7cdfc50"} gateway-1 | {"time_local":"17/Jul/2024:10:55:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/3ddf8c69-f56e-4159-84c6-a67fd7cdfc50 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.043","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"1ea63009a30eb24aa4369a2fd9e7366c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzczNn0.EdiuxomC7y3gvtjtVxExwS2L6v6TBPLkbHY2dxnAPac","level":"info","message":"auth send jwt","requestID":"8b8d5dff4afdb55519069b4fadb1283e"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"8b8d5dff4afdb55519069b4fadb1283e","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"8b8d5dff4afdb55519069b4fadb1283e"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":675,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:36Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":675,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.849484,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:36Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ddf8c69-f56e-4159-84c6-a67fd7cdfc50","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"8b8d5dff4afdb55519069b4fadb1283e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/3ddf8c69-f56e-4159-84c6-a67fd7cdfc50","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213736,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzczNn0.EdiuxomC7y3gvtjtVxExwS2L6v6TBPLkbHY2dxnAPac"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"8b8d5dff4afdb55519069b4fadb1283e","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"8b8d5dff4afdb55519069b4fadb1283e"} device-1 | {"level":"info","message":"POST /devices/3ddf8c69-f56e-4159-84c6-a67fd7cdfc50/websocket 200 18ms","method":"POST","requestID":"8b8d5dff4afdb55519069b4fadb1283e","responseTime":18,"status":200,"url":"/devices/3ddf8c69-f56e-4159-84c6-a67fd7cdfc50/websocket"} gateway-1 | {"time_local":"17/Jul/2024:10:55:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/3ddf8c69-f56e-4159-84c6-a67fd7cdfc50/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.022","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"8b8d5dff4afdb55519069b4fadb1283e"} device-1 | {"level":"info","message":"device 'http://localhost/devices/3ddf8c69-f56e-4159-84c6-a67fd7cdfc50' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2f17813c35262867b8eb0f5e77ff7413","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"2f17813c35262867b8eb0f5e77ff7413","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"17/Jul/2024:10:55:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/b51416d5-cdd6-4ea9-8e3d-66a3e9a285be/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"2f17813c35262867b8eb0f5e77ff7413"} device-1 | {"level":"info","message":"OPTIONS /devices/b51416d5-cdd6-4ea9-8e3d-66a3e9a285be/websocket 200 1ms","method":"OPTIONS","requestID":"2f17813c35262867b8eb0f5e77ff7413","responseTime":1,"status":200,"url":"/devices/b51416d5-cdd6-4ea9-8e3d-66a3e9a285be/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzczOH0.TdHGPFD_NrcHTwd5VWJbxzP0o9b8xSsguitV0xqDvxw","level":"info","message":"auth send jwt","requestID":"8d3ba2de33bdbbce9c47601de16bde43"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"8d3ba2de33bdbbce9c47601de16bde43","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"8d3ba2de33bdbbce9c47601de16bde43"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":676,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:38Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":676,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.031026,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:38Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b51416d5-cdd6-4ea9-8e3d-66a3e9a285be","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"8d3ba2de33bdbbce9c47601de16bde43","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/b51416d5-cdd6-4ea9-8e3d-66a3e9a285be","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213738,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzczOH0.TdHGPFD_NrcHTwd5VWJbxzP0o9b8xSsguitV0xqDvxw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8d3ba2de33bdbbce9c47601de16bde43","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"8d3ba2de33bdbbce9c47601de16bde43"} gateway-1 | {"time_local":"17/Jul/2024:10:55:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/b51416d5-cdd6-4ea9-8e3d-66a3e9a285be/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.028","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"8d3ba2de33bdbbce9c47601de16bde43"} device-1 | {"level":"info","message":"POST /devices/b51416d5-cdd6-4ea9-8e3d-66a3e9a285be/websocket 200 23ms","method":"POST","requestID":"8d3ba2de33bdbbce9c47601de16bde43","responseTime":23,"status":200,"url":"/devices/b51416d5-cdd6-4ea9-8e3d-66a3e9a285be/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/b51416d5-cdd6-4ea9-8e3d-66a3e9a285be' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzczOH0.TdHGPFD_NrcHTwd5VWJbxzP0o9b8xSsguitV0xqDvxw","level":"info","message":"auth send jwt","requestID":"a609518e79164760474c234cfcdbfb43"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a609518e79164760474c234cfcdbfb43","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a609518e79164760474c234cfcdbfb43"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":677,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:38Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":677,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.245594,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ddf8c69-f56e-4159-84c6-a67fd7cdfc50","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"a609518e79164760474c234cfcdbfb43","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/3ddf8c69-f56e-4159-84c6-a67fd7cdfc50","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213738,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzczOH0.TdHGPFD_NrcHTwd5VWJbxzP0o9b8xSsguitV0xqDvxw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a609518e79164760474c234cfcdbfb43","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ddf8c69-f56e-4159-84c6-a67fd7cdfc50","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ddf8c69-f56e-4159-84c6-a67fd7cdfc50","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:36.047336013Z"}]},"request_id":"2d84919b-7520-4ff6-9bd0-fc7c8246f8e1","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213738.1785488} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a609518e79164760474c234cfcdbfb43","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a609518e79164760474c234cfcdbfb43"} gateway-1 | {"time_local":"17/Jul/2024:10:55:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3ddf8c69-f56e-4159-84c6-a67fd7cdfc50? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a609518e79164760474c234cfcdbfb43"} device-1 | {"level":"info","message":"GET /devices/3ddf8c69-f56e-4159-84c6-a67fd7cdfc50? 200 18ms","method":"GET","requestID":"a609518e79164760474c234cfcdbfb43","responseTime":18,"status":200,"url":"/devices/3ddf8c69-f56e-4159-84c6-a67fd7cdfc50?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzczOH0.TdHGPFD_NrcHTwd5VWJbxzP0o9b8xSsguitV0xqDvxw","level":"info","message":"auth send jwt","requestID":"c83c951b825645e7955a3f8acbfd36db"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c83c951b825645e7955a3f8acbfd36db","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c83c951b825645e7955a3f8acbfd36db"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":678,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:38Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":678,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.184158,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b51416d5-cdd6-4ea9-8e3d-66a3e9a285be","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"c83c951b825645e7955a3f8acbfd36db","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/b51416d5-cdd6-4ea9-8e3d-66a3e9a285be","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213738,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzczOH0.TdHGPFD_NrcHTwd5VWJbxzP0o9b8xSsguitV0xqDvxw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c83c951b825645e7955a3f8acbfd36db","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb51416d5-cdd6-4ea9-8e3d-66a3e9a285be","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb51416d5-cdd6-4ea9-8e3d-66a3e9a285be","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:36.098153981Z"}]},"request_id":"4f32260b-4478-41fb-bc5c-31634741a35a","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213738.2033122} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c83c951b825645e7955a3f8acbfd36db","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c83c951b825645e7955a3f8acbfd36db"} gateway-1 | {"time_local":"17/Jul/2024:10:55:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b51416d5-cdd6-4ea9-8e3d-66a3e9a285be? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c83c951b825645e7955a3f8acbfd36db"} device-1 | {"level":"info","message":"GET /devices/b51416d5-cdd6-4ea9-8e3d-66a3e9a285be? 200 17ms","method":"GET","requestID":"c83c951b825645e7955a3f8acbfd36db","responseTime":17,"status":200,"url":"/devices/b51416d5-cdd6-4ea9-8e3d-66a3e9a285be?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzczOH0.TdHGPFD_NrcHTwd5VWJbxzP0o9b8xSsguitV0xqDvxw","level":"info","message":"auth send jwt","requestID":"3d538eb7f56e3c2b1afd5d04372a11dd"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"3d538eb7f56e3c2b1afd5d04372a11dd","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"3d538eb7f56e3c2b1afd5d04372a11dd"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":679,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:38Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":679,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.666593,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:38Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"3d538eb7f56e3c2b1afd5d04372a11dd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213738,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzczOH0.TdHGPFD_NrcHTwd5VWJbxzP0o9b8xSsguitV0xqDvxw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3d538eb7f56e3c2b1afd5d04372a11dd","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a1449836-2d68-45ec-9cfe-ec0197150ced"},"level":"info","message":"Attempting to run experiment","requestID":"3d538eb7f56e3c2b1afd5d04372a11dd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a1449836-2d68-45ec-9cfe-ec0197150ced"},"level":"info","message":"Attempting to book experiment","requestID":"3d538eb7f56e3c2b1afd5d04372a11dd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a1449836-2d68-45ec-9cfe-ec0197150ced"},"level":"info","message":"Successfully booked experiment","requestID":"3d538eb7f56e3c2b1afd5d04372a11dd"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1a051d40-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1a056b60-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":680,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:38Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":680,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.67573,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:38Z"} authorization-1 | {"client_addr":"127.0.0.1:51506","level":"info","msg":"Received request.","req_id":681,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ddf8c69-f56e-4159-84c6-a67fd7cdfc50","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1a051d40-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/3ddf8c69-f56e-4159-84c6-a67fd7cdfc50","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213738,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzczOH0.TdHGPFD_NrcHTwd5VWJbxzP0o9b8xSsguitV0xqDvxw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1a051d40-442b-11ef-8685-a1e9f27e6f28","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51506","level":"info","msg":"Sent response.","req_id":681,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.587764,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b51416d5-cdd6-4ea9-8e3d-66a3e9a285be","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1a056b60-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/b51416d5-cdd6-4ea9-8e3d-66a3e9a285be","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213738,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzczOH0.TdHGPFD_NrcHTwd5VWJbxzP0o9b8xSsguitV0xqDvxw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1a056b60-442b-11ef-8685-a1e9f27e6f28","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ddf8c69-f56e-4159-84c6-a67fd7cdfc50","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ddf8c69-f56e-4159-84c6-a67fd7cdfc50","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:36.047336013Z"}]},"request_id":"22f52093-8164-4220-9dce-94a008c7153e","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213738.2681246} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1a051d40-442b-11ef-8685-a1e9f27e6f28","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb51416d5-cdd6-4ea9-8e3d-66a3e9a285be","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb51416d5-cdd6-4ea9-8e3d-66a3e9a285be","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:36.098153981Z"}]},"request_id":"53ef7e37-58f7-481b-8b46-49afa8790ab3","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213738.268756} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"1a056b60-442b-11ef-8685-a1e9f27e6f28","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1a051d40-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/3ddf8c69-f56e-4159-84c6-a67fd7cdfc50? 200 15ms","method":"GET","requestID":"1a051d40-442b-11ef-8685-a1e9f27e6f28","responseTime":15,"status":200,"url":"/devices/3ddf8c69-f56e-4159-84c6-a67fd7cdfc50?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1a056b60-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/b51416d5-cdd6-4ea9-8e3d-66a3e9a285be? 200 14ms","method":"GET","requestID":"1a056b60-442b-11ef-8685-a1e9f27e6f28","responseTime":15,"status":200,"url":"/devices/b51416d5-cdd6-4ea9-8e3d-66a3e9a285be?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a1449836-2d68-45ec-9cfe-ec0197150ced"},"level":"info","message":"Setting up experiment","requestID":"3d538eb7f56e3c2b1afd5d04372a11dd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a1449836-2d68-45ec-9cfe-ec0197150ced"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"3d538eb7f56e3c2b1afd5d04372a11dd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a1449836-2d68-45ec-9cfe-ec0197150ced"},"level":"info","message":"Successfully locked booking for experiment","requestID":"3d538eb7f56e3c2b1afd5d04372a11dd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a1449836-2d68-45ec-9cfe-ec0197150ced"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"3d538eb7f56e3c2b1afd5d04372a11dd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a1449836-2d68-45ec-9cfe-ec0197150ced"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"3d538eb7f56e3c2b1afd5d04372a11dd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a1449836-2d68-45ec-9cfe-ec0197150ced"},"level":"info","message":"Attempting to update booking for experiment","requestID":"3d538eb7f56e3c2b1afd5d04372a11dd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a1449836-2d68-45ec-9cfe-ec0197150ced"},"level":"info","message":"Successfully updated booking for experiment","requestID":"3d538eb7f56e3c2b1afd5d04372a11dd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a1449836-2d68-45ec-9cfe-ec0197150ced"},"level":"info","message":"Successfully set up experiment","requestID":"3d538eb7f56e3c2b1afd5d04372a11dd"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1a0f5670-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1a0fa490-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1a0fcba0-442b-11ef-8685-a1e9f27e6f28"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a1449836-2d68-45ec-9cfe-ec0197150ced"},"level":"info","message":"Successfully running experiment","requestID":"3d538eb7f56e3c2b1afd5d04372a11dd"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":682,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:38Z"} authorization-1 | {"client_addr":"127.0.0.1:51506","level":"info","msg":"Received request.","req_id":683,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:38Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":682,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.997781,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ddf8c69-f56e-4159-84c6-a67fd7cdfc50","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1a0f5670-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/3ddf8c69-f56e-4159-84c6-a67fd7cdfc50","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213738,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzczOH0.TdHGPFD_NrcHTwd5VWJbxzP0o9b8xSsguitV0xqDvxw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1a0f5670-442b-11ef-8685-a1e9f27e6f28","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51506","level":"info","msg":"Sent response.","req_id":683,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.655871,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b51416d5-cdd6-4ea9-8e3d-66a3e9a285be","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1a0fa490-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/b51416d5-cdd6-4ea9-8e3d-66a3e9a285be","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213738,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzczOH0.TdHGPFD_NrcHTwd5VWJbxzP0o9b8xSsguitV0xqDvxw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1a0fa490-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58322","level":"info","msg":"Received request.","req_id":684,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:38Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ddf8c69-f56e-4159-84c6-a67fd7cdfc50","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ddf8c69-f56e-4159-84c6-a67fd7cdfc50","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:36.047336013Z"}]},"request_id":"f749fa07-9a98-4d4a-acd6-bd5960d8fb30","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213738.3379748} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ddf8c69-f56e-4159-84c6-a67fd7cdfc50","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d0775a87-bc04-4cf0-a8ee-b316bf41dbe0","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213738.3382378} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1a0f5670-442b-11ef-8685-a1e9f27e6f28","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb51416d5-cdd6-4ea9-8e3d-66a3e9a285be","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb51416d5-cdd6-4ea9-8e3d-66a3e9a285be","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:36.098153981Z"}]},"request_id":"0e1c1f02-06e8-4bcc-828e-248a15b88146","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213738.3390305} authorization-1 | {"client_addr":"127.0.0.1:58322","level":"info","msg":"Sent response.","req_id":684,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.6422,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:38Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ddf8c69-f56e-4159-84c6-a67fd7cdfc50","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1a0fcba0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3ddf8c69-f56e-4159-84c6-a67fd7cdfc50","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"1a0fcba0-442b-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1a0fa490-442b-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1a0f5670-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/3ddf8c69-f56e-4159-84c6-a67fd7cdfc50? 200 19ms","method":"GET","requestID":"1a0f5670-442b-11ef-8685-a1e9f27e6f28","responseTime":19,"status":200,"url":"/devices/3ddf8c69-f56e-4159-84c6-a67fd7cdfc50?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1a0fcba0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/3ddf8c69-f56e-4159-84c6-a67fd7cdfc50/signaling 200 17ms","method":"POST","requestID":"1a0fcba0-442b-11ef-8685-a1e9f27e6f28","responseTime":17,"status":200,"url":"/devices/3ddf8c69-f56e-4159-84c6-a67fd7cdfc50/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1a0fa490-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/b51416d5-cdd6-4ea9-8e3d-66a3e9a285be? 200 19ms","method":"GET","requestID":"1a0fa490-442b-11ef-8685-a1e9f27e6f28","responseTime":19,"status":200,"url":"/devices/b51416d5-cdd6-4ea9-8e3d-66a3e9a285be?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1a12b1d0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1a12fff0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa1449836-2d68-45ec-9cfe-ec0197150ced#owner@http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa1449836-2d68-45ec-9cfe-ec0197150ced","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"a5842154-8745-4f5d-956e-e1bd5f89450b","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213738.3511672} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3edfe677-4868-4bc6-a657-880bfe1bc85c","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213738.3513591} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"3d538eb7f56e3c2b1afd5d04372a11dd","responseTime":20,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":685,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:38Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":685,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.506568,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:38Z"} authorization-1 | {"client_addr":"127.0.0.1:51506","level":"info","msg":"Received request.","req_id":686,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:38Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb51416d5-cdd6-4ea9-8e3d-66a3e9a285be","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8aa2a926-e062-4e9e-9ab8-53b480deadf0","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213738.3541157} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b51416d5-cdd6-4ea9-8e3d-66a3e9a285be","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1a12b1d0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b51416d5-cdd6-4ea9-8e3d-66a3e9a285be","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1a12b1d0-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ddf8c69-f56e-4159-84c6-a67fd7cdfc50","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4c6c89b4-34a2-4a15-8029-7b2dee686232","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213738.3570983} authorization-1 | {"client_addr":"127.0.0.1:51506","level":"info","msg":"Sent response.","req_id":686,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.68433,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:38Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ddf8c69-f56e-4159-84c6-a67fd7cdfc50","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1a12fff0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3ddf8c69-f56e-4159-84c6-a67fd7cdfc50","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1a12b1d0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1a12fff0-442b-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"POST /devices/b51416d5-cdd6-4ea9-8e3d-66a3e9a285be/signaling 200 10ms","method":"POST","requestID":"1a12b1d0-442b-11ef-8685-a1e9f27e6f28","responseTime":10,"status":200,"url":"/devices/b51416d5-cdd6-4ea9-8e3d-66a3e9a285be/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/a1449836-2d68-45ec-9cfe-ec0197150ced","user":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"3d538eb7f56e3c2b1afd5d04372a11dd"} gateway-1 | {"time_local":"17/Jul/2024:10:55:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1215","request_time":"0.150","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3d538eb7f56e3c2b1afd5d04372a11dd"} experiment-1 | {"level":"info","message":"POST /experiments? 201 144ms","method":"POST","requestID":"3d538eb7f56e3c2b1afd5d04372a11dd","responseTime":144,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1a12fff0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/3ddf8c69-f56e-4159-84c6-a67fd7cdfc50/signaling 200 11ms","method":"POST","requestID":"1a12fff0-442b-11ef-8685-a1e9f27e6f28","responseTime":11,"status":200,"url":"/devices/3ddf8c69-f56e-4159-84c6-a67fd7cdfc50/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1a14fbc0-442b-11ef-8685-a1e9f27e6f28"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzczOH0.TdHGPFD_NrcHTwd5VWJbxzP0o9b8xSsguitV0xqDvxw","level":"info","message":"auth send jwt","requestID":"ba3ce8affe9610dadde193b799be6a10"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"ba3ce8affe9610dadde193b799be6a10","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":687,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:38Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ba3ce8affe9610dadde193b799be6a10"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb51416d5-cdd6-4ea9-8e3d-66a3e9a285be","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"05880bd3-2fb5-48ce-8cd9-bc208f1ffeff","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213738.3692687} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":687,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.579957,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:38Z"} authorization-1 | {"client_addr":"127.0.0.1:51506","level":"info","msg":"Received request.","req_id":688,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:38Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b51416d5-cdd6-4ea9-8e3d-66a3e9a285be","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1a14fbc0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b51416d5-cdd6-4ea9-8e3d-66a3e9a285be","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1a14fbc0-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51506","level":"info","msg":"Sent response.","req_id":688,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.551251,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ddf8c69-f56e-4159-84c6-a67fd7cdfc50","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"ba3ce8affe9610dadde193b799be6a10","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/3ddf8c69-f56e-4159-84c6-a67fd7cdfc50","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213738,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzczOH0.TdHGPFD_NrcHTwd5VWJbxzP0o9b8xSsguitV0xqDvxw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ba3ce8affe9610dadde193b799be6a10","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1a14fbc0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/b51416d5-cdd6-4ea9-8e3d-66a3e9a285be/signaling 200 11ms","method":"POST","requestID":"1a14fbc0-442b-11ef-8685-a1e9f27e6f28","responseTime":11,"status":200,"url":"/devices/b51416d5-cdd6-4ea9-8e3d-66a3e9a285be/signaling"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ddf8c69-f56e-4159-84c6-a67fd7cdfc50","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ddf8c69-f56e-4159-84c6-a67fd7cdfc50","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:36.047336013Z"}]},"request_id":"597cbaa4-feea-4c89-a8b4-c6e6f790556d","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213738.3750935} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ba3ce8affe9610dadde193b799be6a10","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a1449836-2d68-45ec-9cfe-ec0197150ced"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"3d538eb7f56e3c2b1afd5d04372a11dd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a1449836-2d68-45ec-9cfe-ec0197150ced"},"level":"info","message":"Building connection plan","requestID":"3d538eb7f56e3c2b1afd5d04372a11dd"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"4b3ee83f-4ee3-4e8a-92dd-15b059e47cbe"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"82aff0d7-89ba-498b-9a6e-f2e82f916d24"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"5b88b4ed-fa1b-48b1-bcbf-280101856567"}]},"level":"info","message":"Built pairwise service configurations","requestID":"3d538eb7f56e3c2b1afd5d04372a11dd"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/3ddf8c69-f56e-4159-84c6-a67fd7cdfc50"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/b51416d5-cdd6-4ea9-8e3d-66a3e9a285be"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"3d538eb7f56e3c2b1afd5d04372a11dd"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"1a171ea0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ba3ce8affe9610dadde193b799be6a10"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":689,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:38Z"} gateway-1 | {"time_local":"17/Jul/2024:10:55:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3ddf8c69-f56e-4159-84c6-a67fd7cdfc50? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ba3ce8affe9610dadde193b799be6a10"} device-1 | {"level":"info","message":"GET /devices/3ddf8c69-f56e-4159-84c6-a67fd7cdfc50? 200 14ms","method":"GET","requestID":"ba3ce8affe9610dadde193b799be6a10","responseTime":14,"status":200,"url":"/devices/3ddf8c69-f56e-4159-84c6-a67fd7cdfc50?"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":689,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.820038,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:38Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1a171ea0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213738,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzczOH0.TdHGPFD_NrcHTwd5VWJbxzP0o9b8xSsguitV0xqDvxw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1a171ea0-442b-11ef-8685-a1e9f27e6f28","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzczOH0.TdHGPFD_NrcHTwd5VWJbxzP0o9b8xSsguitV0xqDvxw","level":"info","message":"auth send jwt","requestID":"a4fd6c665688b9a870cb93b3ac5241b0"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a4fd6c665688b9a870cb93b3ac5241b0","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a4fd6c665688b9a870cb93b3ac5241b0"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":690,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:38Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":690,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.836503,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b51416d5-cdd6-4ea9-8e3d-66a3e9a285be","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"a4fd6c665688b9a870cb93b3ac5241b0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/b51416d5-cdd6-4ea9-8e3d-66a3e9a285be","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213738,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzczOH0.TdHGPFD_NrcHTwd5VWJbxzP0o9b8xSsguitV0xqDvxw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a4fd6c665688b9a870cb93b3ac5241b0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"de09d46a-d61d-4c89-966a-9f14dca70993","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213738.394607} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d385db57-f778-4591-8101-017e4a462b0b","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213738.394791} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb51416d5-cdd6-4ea9-8e3d-66a3e9a285be","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb51416d5-cdd6-4ea9-8e3d-66a3e9a285be","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:36.098153981Z"}]},"request_id":"85c443c7-d84c-47d4-8e2c-0d08ac19f34d","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213738.395502} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"1a171ea0-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a4fd6c665688b9a870cb93b3ac5241b0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a4fd6c665688b9a870cb93b3ac5241b0"} gateway-1 | {"time_local":"17/Jul/2024:10:55:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b51416d5-cdd6-4ea9-8e3d-66a3e9a285be? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a4fd6c665688b9a870cb93b3ac5241b0"} device-1 | {"level":"info","message":"GET /devices/b51416d5-cdd6-4ea9-8e3d-66a3e9a285be? 200 15ms","method":"GET","requestID":"a4fd6c665688b9a870cb93b3ac5241b0","responseTime":15,"status":200,"url":"/devices/b51416d5-cdd6-4ea9-8e3d-66a3e9a285be?"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"1a171ea0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"1a171ea0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/faa87119-9486-4fbd-b60c-90c55a9e27b8'","requestID":"1a171ea0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/faa87119-9486-4fbd-b60c-90c55a9e27b8'","requestID":"1a171ea0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"1a171ea0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 33ms","method":"POST","requestID":"1a171ea0-442b-11ef-8685-a1e9f27e6f28","responseTime":33,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"1a171ea0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/faa87119-9486-4fbd-b60c-90c55a9e27b8","device":"b51416d5-cdd6-4ea9-8e3d-66a3e9a285be","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":true} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a1449836-2d68-45ec-9cfe-ec0197150ced"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"3d538eb7f56e3c2b1afd5d04372a11dd"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1a2109b0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":691,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:38Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ddf8c69-f56e-4159-84c6-a67fd7cdfc50","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ccd299ab-708b-410b-b2ff-8c2a9dccf681","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213738.4473193} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":691,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.411869,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:38Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ddf8c69-f56e-4159-84c6-a67fd7cdfc50","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1a2109b0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3ddf8c69-f56e-4159-84c6-a67fd7cdfc50","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1a2109b0-442b-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1a2109b0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/3ddf8c69-f56e-4159-84c6-a67fd7cdfc50/signaling 200 8ms","method":"POST","requestID":"1a2109b0-442b-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/devices/3ddf8c69-f56e-4159-84c6-a67fd7cdfc50/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1a229050-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":692,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:38Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb51416d5-cdd6-4ea9-8e3d-66a3e9a285be","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0f29518e-2cee-4aa9-bead-f3f0cac55133","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213738.4570205} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":692,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.491493,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:38Z"} device-1 | {"device":"b51416d5-cdd6-4ea9-8e3d-66a3e9a285be","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"b51416d5-cdd6-4ea9-8e3d-66a3e9a285be","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b51416d5-cdd6-4ea9-8e3d-66a3e9a285be","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1a229050-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b51416d5-cdd6-4ea9-8e3d-66a3e9a285be","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1a229050-442b-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1a229050-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/b51416d5-cdd6-4ea9-8e3d-66a3e9a285be/signaling 200 9ms","method":"POST","requestID":"1a229050-442b-11ef-8685-a1e9f27e6f28","responseTime":9,"status":200,"url":"/devices/b51416d5-cdd6-4ea9-8e3d-66a3e9a285be/signaling"} device-1 | {"content":{"sdp":"v=0\r\no=- 1662196873569436837 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:VHF7\r\na=ice-pwd:j2gyhXc/yP4kKkeIacIOaSUO\r\na=ice-options:trickle\r\na=fingerprint:sha-256 6F:A1:E3:A1:52:5F:DF:1E:2F:B8:8E:13:B2:65:E4:76:8E:F0:6B:5E:81:74:84:32:D9:52:BD:7D:3D:CA:40:17\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"b51416d5-cdd6-4ea9-8e3d-66a3e9a285be","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"device":"b51416d5-cdd6-4ea9-8e3d-66a3e9a285be","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"3ddf8c69-f56e-4159-84c6-a67fd7cdfc50","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"faa87119-9486-4fbd-b60c-90c55a9e27b8","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"3ddf8c69-f56e-4159-84c6-a67fd7cdfc50","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"3ddf8c69-f56e-4159-84c6-a67fd7cdfc50","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"3ddf8c69-f56e-4159-84c6-a67fd7cdfc50","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"3ddf8c69-f56e-4159-84c6-a67fd7cdfc50","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/faa87119-9486-4fbd-b60c-90c55a9e27b8' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"faa87119-9486-4fbd-b60c-90c55a9e27b8","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e873f3bd6df7591b4c3e5d471003b87d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"e873f3bd6df7591b4c3e5d471003b87d","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/3ddf8c69-f56e-4159-84c6-a67fd7cdfc50"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/b51416d5-cdd6-4ea9-8e3d-66a3e9a285be"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/faa87119-9486-4fbd-b60c-90c55a9e27b8"}}},"level":"info","message":"received a callback","requestID":"e873f3bd6df7591b4c3e5d471003b87d"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 8ms","method":"POST","requestID":"e873f3bd6df7591b4c3e5d471003b87d","responseTime":8,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:55:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.011","http_referrer":"","http_user_agent":"node-fetch","requestID":"e873f3bd6df7591b4c3e5d471003b87d"} device-1 | {"content":{"candidate":"candidate:2279580081 1 udp 2113937151 9e5671c7-de26-416b-9110-2cf23ab08b54.local 53426 typ host generation 0 ufrag VHF7 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"b51416d5-cdd6-4ea9-8e3d-66a3e9a285be","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:351535266 1 udp 1677729535 141.24.211.56 53426 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag VHF7 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"b51416d5-cdd6-4ea9-8e3d-66a3e9a285be","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2866330448 1 udp 33562623 141.24.210.113 50175 typ relay raddr 141.24.211.56 rport 53426 generation 0 ufrag VHF7 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"b51416d5-cdd6-4ea9-8e3d-66a3e9a285be","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/b51416d5-cdd6-4ea9-8e3d-66a3e9a285be'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/b51416d5-cdd6-4ea9-8e3d-66a3e9a285be'"} device-1 | {"device":"b51416d5-cdd6-4ea9-8e3d-66a3e9a285be","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"data":{"peerconnection":"faa87119-9486-4fbd-b60c-90c55a9e27b8","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"3ddf8c69-f56e-4159-84c6-a67fd7cdfc50","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"b51416d5-cdd6-4ea9-8e3d-66a3e9a285be","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"data":{"peerconnection":"faa87119-9486-4fbd-b60c-90c55a9e27b8","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"3ddf8c69-f56e-4159-84c6-a67fd7cdfc50","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/faa87119-9486-4fbd-b60c-90c55a9e27b8' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"faa87119-9486-4fbd-b60c-90c55a9e27b8","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3106704c5a6d101a2ec97d8b967a421b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"3106704c5a6d101a2ec97d8b967a421b","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/3ddf8c69-f56e-4159-84c6-a67fd7cdfc50"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/b51416d5-cdd6-4ea9-8e3d-66a3e9a285be"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/faa87119-9486-4fbd-b60c-90c55a9e27b8"}}},"level":"info","message":"received a callback","requestID":"3106704c5a6d101a2ec97d8b967a421b"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"1b645f20-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":693,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:40Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ffaa87119-9486-4fbd-b60c-90c55a9e27b8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"39b81c8e-19dd-484a-a507-bc0fb075f0cf","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213740.5678804} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":693,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.344841,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/faa87119-9486-4fbd-b60c-90c55a9e27b8","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1b645f20-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/faa87119-9486-4fbd-b60c-90c55a9e27b8","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"1b645f20-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"1b645f20-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /peerconnections/faa87119-9486-4fbd-b60c-90c55a9e27b8 200 10ms","method":"GET","requestID":"1b645f20-442b-11ef-8685-a1e9f27e6f28","responseTime":10,"status":200,"url":"/peerconnections/faa87119-9486-4fbd-b60c-90c55a9e27b8"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 43ms","method":"POST","requestID":"3106704c5a6d101a2ec97d8b967a421b","responseTime":43,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:55:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.046","http_referrer":"","http_user_agent":"node-fetch","requestID":"3106704c5a6d101a2ec97d8b967a421b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1b69dd60-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":694,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:40Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ddf8c69-f56e-4159-84c6-a67fd7cdfc50","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"eed8c09b-62ab-4a1c-a7ff-437d23c9e96d","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213740.605613} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":694,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.820457,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ddf8c69-f56e-4159-84c6-a67fd7cdfc50","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1b69dd60-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3ddf8c69-f56e-4159-84c6-a67fd7cdfc50","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"1b69dd60-442b-11ef-8685-a1e9f27e6f28","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1b69dd60-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/3ddf8c69-f56e-4159-84c6-a67fd7cdfc50/signaling 200 15ms","method":"POST","requestID":"1b69dd60-442b-11ef-8685-a1e9f27e6f28","responseTime":15,"status":200,"url":"/devices/3ddf8c69-f56e-4159-84c6-a67fd7cdfc50/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1b6c9c80-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":695,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:40Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb51416d5-cdd6-4ea9-8e3d-66a3e9a285be","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"abf0af31-6b98-4112-bc9f-07e68d1e8f3a","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213740.6229262} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":695,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.243115,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b51416d5-cdd6-4ea9-8e3d-66a3e9a285be","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1b6c9c80-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b51416d5-cdd6-4ea9-8e3d-66a3e9a285be","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"1b6c9c80-442b-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1b6c9c80-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/b51416d5-cdd6-4ea9-8e3d-66a3e9a285be/signaling 200 13ms","method":"POST","requestID":"1b6c9c80-442b-11ef-8685-a1e9f27e6f28","responseTime":13,"status":200,"url":"/devices/b51416d5-cdd6-4ea9-8e3d-66a3e9a285be/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0MH0.TAIflS5_en_KZo74b6gWgyHuCD-Fh_-ORV7s4c7_Q-0","level":"info","message":"auth send jwt","requestID":"a2910a7a1e06d6cdde592b67b32d1dc2"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a2910a7a1e06d6cdde592b67b32d1dc2","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/a1449836-2d68-45ec-9cfe-ec0197150ced","requestID":"a2910a7a1e06d6cdde592b67b32d1dc2"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":696,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:40Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":696,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.322035,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/a1449836-2d68-45ec-9cfe-ec0197150ced","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"a2910a7a1e06d6cdde592b67b32d1dc2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:http://localhost/experiments/a1449836-2d68-45ec-9cfe-ec0197150ced","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213740,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0MH0.TAIflS5_en_KZo74b6gWgyHuCD-Fh_-ORV7s4c7_Q-0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a2910a7a1e06d6cdde592b67b32d1dc2","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/a1449836-2d68-45ec-9cfe-ec0197150ced","requestID":"a2910a7a1e06d6cdde592b67b32d1dc2"} gateway-1 | {"time_local":"17/Jul/2024:10:55:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/a1449836-2d68-45ec-9cfe-ec0197150ced HTTP/1.1","status": "200","body_bytes_sent":"1288","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a2910a7a1e06d6cdde592b67b32d1dc2"} experiment-1 | {"level":"info","message":"GET /experiments/a1449836-2d68-45ec-9cfe-ec0197150ced 200 15ms","method":"GET","requestID":"a2910a7a1e06d6cdde592b67b32d1dc2","responseTime":15,"status":200,"url":"/experiments/a1449836-2d68-45ec-9cfe-ec0197150ced"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0MH0.TAIflS5_en_KZo74b6gWgyHuCD-Fh_-ORV7s4c7_Q-0","level":"info","message":"auth send jwt","requestID":"28f321bc334f0c8a2d043c138c80ce68"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"28f321bc334f0c8a2d043c138c80ce68","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/a1449836-2d68-45ec-9cfe-ec0197150ced","requestID":"28f321bc334f0c8a2d043c138c80ce68"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":697,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:40Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":697,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.247142,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:40Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/a1449836-2d68-45ec-9cfe-ec0197150ced","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"28f321bc334f0c8a2d043c138c80ce68","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:http://localhost/experiments/a1449836-2d68-45ec-9cfe-ec0197150ced","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213740,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0MH0.TAIflS5_en_KZo74b6gWgyHuCD-Fh_-ORV7s4c7_Q-0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"28f321bc334f0c8a2d043c138c80ce68","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a1449836-2d68-45ec-9cfe-ec0197150ced"},"level":"info","message":"Attempting to finish experiment","requestID":"28f321bc334f0c8a2d043c138c80ce68"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"1b77c010-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":698,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:40Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":698,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.311964,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:40Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/faa87119-9486-4fbd-b60c-90c55a9e27b8","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1b77c010-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"peerconnection:http://localhost/peerconnections/faa87119-9486-4fbd-b60c-90c55a9e27b8","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213740,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0MH0.TAIflS5_en_KZo74b6gWgyHuCD-Fh_-ORV7s4c7_Q-0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1b77c010-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/faa87119-9486-4fbd-b60c-90c55a9e27b8","device":"b51416d5-cdd6-4ea9-8e3d-66a3e9a285be","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"3ddf8c69-f56e-4159-84c6-a67fd7cdfc50","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"3ddf8c69-f56e-4159-84c6-a67fd7cdfc50","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"3ddf8c69-f56e-4159-84c6-a67fd7cdfc50","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/faa87119-9486-4fbd-b60c-90c55a9e27b8' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/faa87119-9486-4fbd-b60c-90c55a9e27b8' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"faa87119-9486-4fbd-b60c-90c55a9e27b8","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ffaa87119-9486-4fbd-b60c-90c55a9e27b8': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ffaa87119-9486-4fbd-b60c-90c55a9e27b8","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]},"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":null},"raw_response":{},"request_id":"20953932-0af2-4e5c-8067-caa3e590cb42","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213740.714051} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"431837e07f2fa3010466eb8728a6ae5d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4e8e0b19-c986-44b8-aa44-76ef30411ce7","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213740.7148077} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"431837e07f2fa3010466eb8728a6ae5d","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"1b77c010-442b-11ef-8685-a1e9f27e6f28","responseTime":12,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/3ddf8c69-f56e-4159-84c6-a67fd7cdfc50"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/b51416d5-cdd6-4ea9-8e3d-66a3e9a285be"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/faa87119-9486-4fbd-b60c-90c55a9e27b8"}}},"level":"info","message":"received a callback","requestID":"431837e07f2fa3010466eb8728a6ae5d"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ff6a5edf5eb3d94f85731950427116e6","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"ff6a5edf5eb3d94f85731950427116e6","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/3ddf8c69-f56e-4159-84c6-a67fd7cdfc50"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/b51416d5-cdd6-4ea9-8e3d-66a3e9a285be"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/faa87119-9486-4fbd-b60c-90c55a9e27b8"}}},"level":"info","message":"received a callback","requestID":"ff6a5edf5eb3d94f85731950427116e6"} device-1 | {"data":{"peerconnection":"faa87119-9486-4fbd-b60c-90c55a9e27b8","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"1b77c010-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"DELETE /peerconnections/faa87119-9486-4fbd-b60c-90c55a9e27b8 204 49ms","method":"DELETE","requestID":"1b77c010-442b-11ef-8685-a1e9f27e6f28","responseTime":49,"status":204,"url":"/peerconnections/faa87119-9486-4fbd-b60c-90c55a9e27b8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a1449836-2d68-45ec-9cfe-ec0197150ced"},"level":"info","message":"Successfully finished experiment","requestID":"28f321bc334f0c8a2d043c138c80ce68"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1b81f940-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":699,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:40Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ddf8c69-f56e-4159-84c6-a67fd7cdfc50","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"37fe1b32-7292-47be-ae1d-0cdcb17fe8e0","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213740.7623641} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":699,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.942846,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ddf8c69-f56e-4159-84c6-a67fd7cdfc50","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1b81f940-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3ddf8c69-f56e-4159-84c6-a67fd7cdfc50","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"1b81f940-442b-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa1449836-2d68-45ec-9cfe-ec0197150ced': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa1449836-2d68-45ec-9cfe-ec0197150ced","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]},"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":null},"raw_response":{},"request_id":"1476b346-160b-404a-8146-1735010d952a","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213740.7682707} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1b81f940-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/3ddf8c69-f56e-4159-84c6-a67fd7cdfc50/signaling 200 13ms","method":"POST","requestID":"1b81f940-442b-11ef-8685-a1e9f27e6f28","responseTime":13,"status":200,"url":"/devices/3ddf8c69-f56e-4159-84c6-a67fd7cdfc50/signaling"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"320bb2aa-991a-43dc-bca9-7e2624cc02f0","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213740.768818} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"28f321bc334f0c8a2d043c138c80ce68","responseTime":17,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1b849150-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":700,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:40Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb51416d5-cdd6-4ea9-8e3d-66a3e9a285be","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"166fc136-1f43-4e88-81c2-bee6cba0048c","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213740.7809165} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":700,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.162024,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b51416d5-cdd6-4ea9-8e3d-66a3e9a285be","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1b849150-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b51416d5-cdd6-4ea9-8e3d-66a3e9a285be","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"1b849150-442b-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1b849150-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/b51416d5-cdd6-4ea9-8e3d-66a3e9a285be/signaling 200 15ms","method":"POST","requestID":"1b849150-442b-11ef-8685-a1e9f27e6f28","responseTime":15,"status":200,"url":"/devices/b51416d5-cdd6-4ea9-8e3d-66a3e9a285be/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/a1449836-2d68-45ec-9cfe-ec0197150ced","requestID":"28f321bc334f0c8a2d043c138c80ce68"} gateway-1 | {"time_local":"17/Jul/2024:10:55:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/a1449836-2d68-45ec-9cfe-ec0197150ced HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.176","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"28f321bc334f0c8a2d043c138c80ce68"} gateway-1 | {"time_local":"17/Jul/2024:10:55:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3193","request_time":"4.197","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"06940ace7e830cbb0e883fd1a4a58adc"} experiment-1 | {"level":"info","message":"DELETE /experiments/a1449836-2d68-45ec-9cfe-ec0197150ced 204 172ms","method":"DELETE","requestID":"28f321bc334f0c8a2d043c138c80ce68","responseTime":172,"status":204,"url":"/experiments/a1449836-2d68-45ec-9cfe-ec0197150ced"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 130ms","method":"POST","requestID":"431837e07f2fa3010466eb8728a6ae5d","responseTime":130,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:55:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.135","http_referrer":"","http_user_agent":"node-fetch","requestID":"431837e07f2fa3010466eb8728a6ae5d"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 128ms","method":"POST","requestID":"ff6a5edf5eb3d94f85731950427116e6","responseTime":128,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:55:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.136","http_referrer":"","http_user_agent":"node-fetch","requestID":"ff6a5edf5eb3d94f85731950427116e6"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0MH0.TAIflS5_en_KZo74b6gWgyHuCD-Fh_-ORV7s4c7_Q-0","level":"info","message":"auth send jwt","requestID":"50dbe8e53f4d46857cf1cd1ab2b46689"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"50dbe8e53f4d46857cf1cd1ab2b46689","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"50dbe8e53f4d46857cf1cd1ab2b46689"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":701,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:40Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":701,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.796741,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:40Z"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/3ddf8c69-f56e-4159-84c6-a67fd7cdfc50' closed"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"50dbe8e53f4d46857cf1cd1ab2b46689","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213740,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0MH0.TAIflS5_en_KZo74b6gWgyHuCD-Fh_-ORV7s4c7_Q-0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"50dbe8e53f4d46857cf1cd1ab2b46689","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"17/Jul/2024:10:55:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2702","request_time":"2.717","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"998d55556f30b18cdadebb99dde8b085"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/b51416d5-cdd6-4ea9-8e3d-66a3e9a285be' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F640724ce-64c4-4fc0-8348-96efb1b9c341","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"e5bdfeee-2a31-4781-9d88-80d589daa512","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213740.873917} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"50dbe8e53f4d46857cf1cd1ab2b46689","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d15ec739-7a9b-4c77-af84-fdef8093c1bd","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213740.879843} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"50dbe8e53f4d46857cf1cd1ab2b46689","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F640724ce-64c4-4fc0-8348-96efb1b9c341","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"2fd637ab-6fe3-43a9-a132-82e2c5e8b530","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213740.890122} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"aab2dfb6-d7e6-4dde-9db0-541fee69d495","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213740.89053} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"50dbe8e53f4d46857cf1cd1ab2b46689","responseTime":12,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F640724ce-64c4-4fc0-8348-96efb1b9c341","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F640724ce-64c4-4fc0-8348-96efb1b9c341","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:40.890094817Z"}]},"request_id":"0412b9c9-3092-44b2-969a-9d0e9b24845c","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213740.8949924} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"50dbe8e53f4d46857cf1cd1ab2b46689","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"50dbe8e53f4d46857cf1cd1ab2b46689"} gateway-1 | {"time_local":"17/Jul/2024:10:55:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"50dbe8e53f4d46857cf1cd1ab2b46689"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"50dbe8e53f4d46857cf1cd1ab2b46689","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0MH0.TAIflS5_en_KZo74b6gWgyHuCD-Fh_-ORV7s4c7_Q-0","level":"info","message":"auth send jwt","requestID":"7d82951ff34f69f0581137c2c592d76b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"7d82951ff34f69f0581137c2c592d76b","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"7d82951ff34f69f0581137c2c592d76b"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":702,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:40Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":702,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.694497,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:40Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"7d82951ff34f69f0581137c2c592d76b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213740,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0MH0.TAIflS5_en_KZo74b6gWgyHuCD-Fh_-ORV7s4c7_Q-0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7d82951ff34f69f0581137c2c592d76b","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1b222630-9cc0-4d52-8c7a-53bce43b227f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"020547fc-7905-4612-a873-6096ecaf1b62","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213740.9189882} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"7d82951ff34f69f0581137c2c592d76b","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"976d8605-c95d-4844-89ed-48e578592fcb","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213740.924646} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"7d82951ff34f69f0581137c2c592d76b","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1b222630-9cc0-4d52-8c7a-53bce43b227f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"70df8095-4f73-413e-9e52-c4a775114f3a","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213740.9390123} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c06e7703-8dad-4699-869a-564f1b49730f","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213740.9391627} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"7d82951ff34f69f0581137c2c592d76b","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1b222630-9cc0-4d52-8c7a-53bce43b227f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1b222630-9cc0-4d52-8c7a-53bce43b227f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:40.938985931Z"}]},"request_id":"80f4a7c9-3d69-47ae-aee0-6cd509c4b7bb","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213740.943291} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7d82951ff34f69f0581137c2c592d76b","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"7d82951ff34f69f0581137c2c592d76b"} gateway-1 | {"time_local":"17/Jul/2024:10:55:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7d82951ff34f69f0581137c2c592d76b"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"7d82951ff34f69f0581137c2c592d76b","responseTime":42,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0MX0.U9MmhcKMjvmqiuiVEnjVI_YECX_6lZHRIprEK1qESxU","level":"info","message":"auth send jwt","requestID":"b9ec20b2d71a327f06d7080662d762a1"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b9ec20b2d71a327f06d7080662d762a1","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"b9ec20b2d71a327f06d7080662d762a1"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":703,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:41Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":703,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.922843,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:41Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/640724ce-64c4-4fc0-8348-96efb1b9c341","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"b9ec20b2d71a327f06d7080662d762a1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/640724ce-64c4-4fc0-8348-96efb1b9c341","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213741,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0MX0.U9MmhcKMjvmqiuiVEnjVI_YECX_6lZHRIprEK1qESxU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b9ec20b2d71a327f06d7080662d762a1","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F640724ce-64c4-4fc0-8348-96efb1b9c341","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F640724ce-64c4-4fc0-8348-96efb1b9c341","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:40.890094817Z"}]},"request_id":"e173766d-d451-438d-b9f3-03e19c37d597","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213741.4320114} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b9ec20b2d71a327f06d7080662d762a1","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fd607e3c-bcda-4e05-985d-89d9c73b4662","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213741.436776} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"b9ec20b2d71a327f06d7080662d762a1","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F640724ce-64c4-4fc0-8348-96efb1b9c341","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F640724ce-64c4-4fc0-8348-96efb1b9c341","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:40.890094817Z"}]},"request_id":"c4c612fe-9bd9-4f09-9467-21d07682a5e6","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213741.448452} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b9ec20b2d71a327f06d7080662d762a1","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"b9ec20b2d71a327f06d7080662d762a1"} gateway-1 | {"time_local":"17/Jul/2024:10:55:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/640724ce-64c4-4fc0-8348-96efb1b9c341 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.034","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"b9ec20b2d71a327f06d7080662d762a1"} device-1 | {"level":"info","message":"PATCH /devices/640724ce-64c4-4fc0-8348-96efb1b9c341 200 29ms","method":"PATCH","requestID":"b9ec20b2d71a327f06d7080662d762a1","responseTime":29,"status":200,"url":"/devices/640724ce-64c4-4fc0-8348-96efb1b9c341"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0MX0.U9MmhcKMjvmqiuiVEnjVI_YECX_6lZHRIprEK1qESxU","level":"info","message":"auth send jwt","requestID":"a40052ebe8cacf7365f53279b80381a4"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"a40052ebe8cacf7365f53279b80381a4","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"a40052ebe8cacf7365f53279b80381a4"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":704,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:41Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":704,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.174575,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:41Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/640724ce-64c4-4fc0-8348-96efb1b9c341","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"a40052ebe8cacf7365f53279b80381a4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/640724ce-64c4-4fc0-8348-96efb1b9c341","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213741,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0MX0.U9MmhcKMjvmqiuiVEnjVI_YECX_6lZHRIprEK1qESxU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a40052ebe8cacf7365f53279b80381a4","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"a40052ebe8cacf7365f53279b80381a4"} device-1 | {"level":"info","message":"POST /devices/640724ce-64c4-4fc0-8348-96efb1b9c341/websocket 200 19ms","method":"POST","requestID":"a40052ebe8cacf7365f53279b80381a4","responseTime":19,"status":200,"url":"/devices/640724ce-64c4-4fc0-8348-96efb1b9c341/websocket"} gateway-1 | {"time_local":"17/Jul/2024:10:55:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/640724ce-64c4-4fc0-8348-96efb1b9c341/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.026","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"a40052ebe8cacf7365f53279b80381a4"} device-1 | {"level":"info","message":"device 'http://localhost/devices/640724ce-64c4-4fc0-8348-96efb1b9c341' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"092760a30ddeec1141b180e299910531","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"092760a30ddeec1141b180e299910531","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"17/Jul/2024:10:55:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/1b222630-9cc0-4d52-8c7a-53bce43b227f/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.005","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"092760a30ddeec1141b180e299910531"} device-1 | {"level":"info","message":"OPTIONS /devices/1b222630-9cc0-4d52-8c7a-53bce43b227f/websocket 200 1ms","method":"OPTIONS","requestID":"092760a30ddeec1141b180e299910531","responseTime":1,"status":200,"url":"/devices/1b222630-9cc0-4d52-8c7a-53bce43b227f/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0Mn0.K6c3iOC7WgTSkaRQkwh11G4KYc296QeaUK5fjhorvu8","level":"info","message":"auth send jwt","requestID":"428021caaae7138fb0e63b623c4aeb35"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"428021caaae7138fb0e63b623c4aeb35","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"428021caaae7138fb0e63b623c4aeb35"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":705,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:42Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":705,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.358113,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:42Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/1b222630-9cc0-4d52-8c7a-53bce43b227f","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"428021caaae7138fb0e63b623c4aeb35","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/1b222630-9cc0-4d52-8c7a-53bce43b227f","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213742,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0Mn0.K6c3iOC7WgTSkaRQkwh11G4KYc296QeaUK5fjhorvu8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"428021caaae7138fb0e63b623c4aeb35","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"428021caaae7138fb0e63b623c4aeb35"} device-1 | {"level":"info","message":"POST /devices/1b222630-9cc0-4d52-8c7a-53bce43b227f/websocket 200 23ms","method":"POST","requestID":"428021caaae7138fb0e63b623c4aeb35","responseTime":23,"status":200,"url":"/devices/1b222630-9cc0-4d52-8c7a-53bce43b227f/websocket"} gateway-1 | {"time_local":"17/Jul/2024:10:55:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/1b222630-9cc0-4d52-8c7a-53bce43b227f/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.028","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"428021caaae7138fb0e63b623c4aeb35"} device-1 | {"level":"info","message":"device 'http://localhost/devices/1b222630-9cc0-4d52-8c7a-53bce43b227f' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0Mn0.K6c3iOC7WgTSkaRQkwh11G4KYc296QeaUK5fjhorvu8","level":"info","message":"auth send jwt","requestID":"70c6c8a5359ad51f4b11595338d1c18c"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"70c6c8a5359ad51f4b11595338d1c18c","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"70c6c8a5359ad51f4b11595338d1c18c"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":706,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:42Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":706,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.244257,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/640724ce-64c4-4fc0-8348-96efb1b9c341","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"70c6c8a5359ad51f4b11595338d1c18c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/640724ce-64c4-4fc0-8348-96efb1b9c341","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213742,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0Mn0.K6c3iOC7WgTSkaRQkwh11G4KYc296QeaUK5fjhorvu8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"70c6c8a5359ad51f4b11595338d1c18c","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F640724ce-64c4-4fc0-8348-96efb1b9c341","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F640724ce-64c4-4fc0-8348-96efb1b9c341","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:40.890094817Z"}]},"request_id":"6a5b5cdd-5511-47f1-acd4-3f7ea0bcf46e","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213742.9781337} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"70c6c8a5359ad51f4b11595338d1c18c","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"70c6c8a5359ad51f4b11595338d1c18c"} gateway-1 | {"time_local":"17/Jul/2024:10:55:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/640724ce-64c4-4fc0-8348-96efb1b9c341? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"70c6c8a5359ad51f4b11595338d1c18c"} device-1 | {"level":"info","message":"GET /devices/640724ce-64c4-4fc0-8348-96efb1b9c341? 200 18ms","method":"GET","requestID":"70c6c8a5359ad51f4b11595338d1c18c","responseTime":18,"status":200,"url":"/devices/640724ce-64c4-4fc0-8348-96efb1b9c341?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0Mn0.K6c3iOC7WgTSkaRQkwh11G4KYc296QeaUK5fjhorvu8","level":"info","message":"auth send jwt","requestID":"10c95b8647ed5e39074535a14c9528c1"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"10c95b8647ed5e39074535a14c9528c1","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"10c95b8647ed5e39074535a14c9528c1"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":707,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:42Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":707,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.250399,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1b222630-9cc0-4d52-8c7a-53bce43b227f","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"10c95b8647ed5e39074535a14c9528c1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/1b222630-9cc0-4d52-8c7a-53bce43b227f","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213742,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0Mn0.K6c3iOC7WgTSkaRQkwh11G4KYc296QeaUK5fjhorvu8"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"10c95b8647ed5e39074535a14c9528c1","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1b222630-9cc0-4d52-8c7a-53bce43b227f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1b222630-9cc0-4d52-8c7a-53bce43b227f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:40.938985931Z"}]},"request_id":"510fb61c-819d-4826-964e-9e23f1535628","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213743.0060914} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"10c95b8647ed5e39074535a14c9528c1","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"10c95b8647ed5e39074535a14c9528c1"} gateway-1 | {"time_local":"17/Jul/2024:10:55:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/1b222630-9cc0-4d52-8c7a-53bce43b227f? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"10c95b8647ed5e39074535a14c9528c1"} device-1 | {"level":"info","message":"GET /devices/1b222630-9cc0-4d52-8c7a-53bce43b227f? 200 20ms","method":"GET","requestID":"10c95b8647ed5e39074535a14c9528c1","responseTime":20,"status":200,"url":"/devices/1b222630-9cc0-4d52-8c7a-53bce43b227f?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0M30.aUqgwSRFd6FJwCyfStUYv84Ck-QJUYRiU9RgEpMQ2Es","level":"info","message":"auth send jwt","requestID":"1fafb806d91b55cc756dbbe2f0d9e45a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1fafb806d91b55cc756dbbe2f0d9e45a","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"1fafb806d91b55cc756dbbe2f0d9e45a"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":708,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:43Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":708,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.309905,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:43Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1fafb806d91b55cc756dbbe2f0d9e45a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213743,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0M30.aUqgwSRFd6FJwCyfStUYv84Ck-QJUYRiU9RgEpMQ2Es"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1fafb806d91b55cc756dbbe2f0d9e45a","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4781fefa-a231-40c5-a9ac-89016027008b"},"level":"info","message":"Attempting to run experiment","requestID":"1fafb806d91b55cc756dbbe2f0d9e45a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4781fefa-a231-40c5-a9ac-89016027008b"},"level":"info","message":"Attempting to book experiment","requestID":"1fafb806d91b55cc756dbbe2f0d9e45a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4781fefa-a231-40c5-a9ac-89016027008b"},"level":"info","message":"Successfully booked experiment","requestID":"1fafb806d91b55cc756dbbe2f0d9e45a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1ce1fe70-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1ce24c90-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":709,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:43Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":709,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.884945,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/640724ce-64c4-4fc0-8348-96efb1b9c341","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1ce1fe70-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/640724ce-64c4-4fc0-8348-96efb1b9c341","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213743,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0M30.aUqgwSRFd6FJwCyfStUYv84Ck-QJUYRiU9RgEpMQ2Es"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1ce1fe70-442b-11ef-8685-a1e9f27e6f28","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:35236","level":"info","msg":"Received request.","req_id":710,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:43Z"} authorization-1 | {"client_addr":"127.0.0.1:35236","level":"info","msg":"Sent response.","req_id":710,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.433805,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1b222630-9cc0-4d52-8c7a-53bce43b227f","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1ce24c90-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/1b222630-9cc0-4d52-8c7a-53bce43b227f","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213743,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0M30.aUqgwSRFd6FJwCyfStUYv84Ck-QJUYRiU9RgEpMQ2Es"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"1ce24c90-442b-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F640724ce-64c4-4fc0-8348-96efb1b9c341","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F640724ce-64c4-4fc0-8348-96efb1b9c341","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:40.890094817Z"}]},"request_id":"2a63fff7-1859-4bb0-bc23-9fff3df8eb65","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213743.0728476} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1ce1fe70-442b-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1b222630-9cc0-4d52-8c7a-53bce43b227f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1b222630-9cc0-4d52-8c7a-53bce43b227f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:40.938985931Z"}]},"request_id":"39194dbe-5dae-47d2-82f8-f031df1b7a20","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213743.0768695} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1ce1fe70-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1ce24c90-442b-11ef-8685-a1e9f27e6f28","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/640724ce-64c4-4fc0-8348-96efb1b9c341? 200 16ms","method":"GET","requestID":"1ce1fe70-442b-11ef-8685-a1e9f27e6f28","responseTime":16,"status":200,"url":"/devices/640724ce-64c4-4fc0-8348-96efb1b9c341?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1ce24c90-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/1b222630-9cc0-4d52-8c7a-53bce43b227f? 200 18ms","method":"GET","requestID":"1ce24c90-442b-11ef-8685-a1e9f27e6f28","responseTime":18,"status":200,"url":"/devices/1b222630-9cc0-4d52-8c7a-53bce43b227f?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4781fefa-a231-40c5-a9ac-89016027008b"},"level":"info","message":"Setting up experiment","requestID":"1fafb806d91b55cc756dbbe2f0d9e45a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4781fefa-a231-40c5-a9ac-89016027008b"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"1fafb806d91b55cc756dbbe2f0d9e45a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4781fefa-a231-40c5-a9ac-89016027008b"},"level":"info","message":"Successfully locked booking for experiment","requestID":"1fafb806d91b55cc756dbbe2f0d9e45a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4781fefa-a231-40c5-a9ac-89016027008b"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"1fafb806d91b55cc756dbbe2f0d9e45a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4781fefa-a231-40c5-a9ac-89016027008b"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"1fafb806d91b55cc756dbbe2f0d9e45a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4781fefa-a231-40c5-a9ac-89016027008b"},"level":"info","message":"Attempting to update booking for experiment","requestID":"1fafb806d91b55cc756dbbe2f0d9e45a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4781fefa-a231-40c5-a9ac-89016027008b"},"level":"info","message":"Successfully updated booking for experiment","requestID":"1fafb806d91b55cc756dbbe2f0d9e45a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4781fefa-a231-40c5-a9ac-89016027008b"},"level":"info","message":"Successfully set up experiment","requestID":"1fafb806d91b55cc756dbbe2f0d9e45a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1cec85c0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1cecd3e0-442b-11ef-8685-a1e9f27e6f28"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4781fefa-a231-40c5-a9ac-89016027008b"},"level":"info","message":"Successfully running experiment","requestID":"1fafb806d91b55cc756dbbe2f0d9e45a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1ced7020-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":711,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:43Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":711,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.247694,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:43Z"} authorization-1 | {"client_addr":"127.0.0.1:35236","level":"info","msg":"Received request.","req_id":712,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/640724ce-64c4-4fc0-8348-96efb1b9c341","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1cec85c0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/640724ce-64c4-4fc0-8348-96efb1b9c341","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213743,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0M30.aUqgwSRFd6FJwCyfStUYv84Ck-QJUYRiU9RgEpMQ2Es"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"1cec85c0-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:35236","level":"info","msg":"Sent response.","req_id":712,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.708408,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1b222630-9cc0-4d52-8c7a-53bce43b227f","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1cecd3e0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/1b222630-9cc0-4d52-8c7a-53bce43b227f","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213743,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0M30.aUqgwSRFd6FJwCyfStUYv84Ck-QJUYRiU9RgEpMQ2Es"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"1cecd3e0-442b-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":713,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:43Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F640724ce-64c4-4fc0-8348-96efb1b9c341","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"600292a9-0725-4ac1-a107-29ba4fe85245","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213743.147291} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":713,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.561971,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/640724ce-64c4-4fc0-8348-96efb1b9c341","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1ced7020-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/640724ce-64c4-4fc0-8348-96efb1b9c341","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"1ced7020-442b-11ef-8685-a1e9f27e6f28","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F640724ce-64c4-4fc0-8348-96efb1b9c341","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F640724ce-64c4-4fc0-8348-96efb1b9c341","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:40.890094817Z"}]},"request_id":"503f3736-cf2a-49ee-b343-e6a62dc1b913","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213743.1492958} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1b222630-9cc0-4d52-8c7a-53bce43b227f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1b222630-9cc0-4d52-8c7a-53bce43b227f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:40.938985931Z"}]},"request_id":"f2454b69-9540-4276-9274-f6bd32c7bb08","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213743.151074} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"1cec85c0-442b-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"1cecd3e0-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F4781fefa-a231-40c5-a9ac-89016027008b#owner@http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F4781fefa-a231-40c5-a9ac-89016027008b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"e837ebc2-d234-408a-ac00-1b44f72e537a","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213743.1613286} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5b6e2a66-d0d8-40b0-81b5-aedd1a6b58e8","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213743.1614897} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1ced7020-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/640724ce-64c4-4fc0-8348-96efb1b9c341/signaling 200 25ms","method":"POST","requestID":"1ced7020-442b-11ef-8685-a1e9f27e6f28","responseTime":25,"status":200,"url":"/devices/640724ce-64c4-4fc0-8348-96efb1b9c341/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1cec85c0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"1fafb806d91b55cc756dbbe2f0d9e45a","responseTime":24,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"GET /devices/640724ce-64c4-4fc0-8348-96efb1b9c341? 200 33ms","method":"GET","requestID":"1cec85c0-442b-11ef-8685-a1e9f27e6f28","responseTime":33,"status":200,"url":"/devices/640724ce-64c4-4fc0-8348-96efb1b9c341?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1cecd3e0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/1b222630-9cc0-4d52-8c7a-53bce43b227f? 200 32ms","method":"GET","requestID":"1cecd3e0-442b-11ef-8685-a1e9f27e6f28","responseTime":32,"status":200,"url":"/devices/1b222630-9cc0-4d52-8c7a-53bce43b227f?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1cf1dcf0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":714,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:43Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1cf2ee60-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1b222630-9cc0-4d52-8c7a-53bce43b227f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7abb51ea-97ba-48fd-8872-f1ad5af6d9a0","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213743.1750937} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":714,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.603745,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1b222630-9cc0-4d52-8c7a-53bce43b227f","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1cf1dcf0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1b222630-9cc0-4d52-8c7a-53bce43b227f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"1cf1dcf0-442b-11ef-8685-a1e9f27e6f28","responseTime":9,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/4781fefa-a231-40c5-a9ac-89016027008b","user":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"1fafb806d91b55cc756dbbe2f0d9e45a"} gateway-1 | {"time_local":"17/Jul/2024:10:55:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1215","request_time":"0.165","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1fafb806d91b55cc756dbbe2f0d9e45a"} experiment-1 | {"level":"info","message":"POST /experiments? 201 159ms","method":"POST","requestID":"1fafb806d91b55cc756dbbe2f0d9e45a","responseTime":159,"status":201,"url":"/experiments?"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":715,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:43Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1cf1dcf0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/1b222630-9cc0-4d52-8c7a-53bce43b227f/signaling 200 15ms","method":"POST","requestID":"1cf1dcf0-442b-11ef-8685-a1e9f27e6f28","responseTime":15,"status":200,"url":"/devices/1b222630-9cc0-4d52-8c7a-53bce43b227f/signaling"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F640724ce-64c4-4fc0-8348-96efb1b9c341","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6514b6b4-d013-4f52-ac14-ea1668f8ec5f","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213743.1837113} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":715,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.775409,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/640724ce-64c4-4fc0-8348-96efb1b9c341","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1cf2ee60-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/640724ce-64c4-4fc0-8348-96efb1b9c341","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"1cf2ee60-442b-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0M30.aUqgwSRFd6FJwCyfStUYv84Ck-QJUYRiU9RgEpMQ2Es","level":"info","message":"auth send jwt","requestID":"9d721838c76256de180a33d6be03f085"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"9d721838c76256de180a33d6be03f085","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9d721838c76256de180a33d6be03f085"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1cf2ee60-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/640724ce-64c4-4fc0-8348-96efb1b9c341/signaling 200 18ms","method":"POST","requestID":"1cf2ee60-442b-11ef-8685-a1e9f27e6f28","responseTime":18,"status":200,"url":"/devices/640724ce-64c4-4fc0-8348-96efb1b9c341/signaling"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":716,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:43Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":716,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.345459,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/640724ce-64c4-4fc0-8348-96efb1b9c341","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"9d721838c76256de180a33d6be03f085","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/640724ce-64c4-4fc0-8348-96efb1b9c341","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213743,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0M30.aUqgwSRFd6FJwCyfStUYv84Ck-QJUYRiU9RgEpMQ2Es"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9d721838c76256de180a33d6be03f085","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1cf622b0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":717,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:43Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F640724ce-64c4-4fc0-8348-96efb1b9c341","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F640724ce-64c4-4fc0-8348-96efb1b9c341","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:40.890094817Z"}]},"request_id":"251325db-9f2a-4fb4-998d-f9c1f2769434","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213743.201694} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9d721838c76256de180a33d6be03f085","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1b222630-9cc0-4d52-8c7a-53bce43b227f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"33d2c56b-a5e0-4cea-b9df-c7971f90f07e","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213743.2029927} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":717,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.939918,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1b222630-9cc0-4d52-8c7a-53bce43b227f","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1cf622b0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1b222630-9cc0-4d52-8c7a-53bce43b227f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"1cf622b0-442b-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9d721838c76256de180a33d6be03f085"} gateway-1 | {"time_local":"17/Jul/2024:10:55:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/640724ce-64c4-4fc0-8348-96efb1b9c341? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9d721838c76256de180a33d6be03f085"} device-1 | {"level":"info","message":"GET /devices/640724ce-64c4-4fc0-8348-96efb1b9c341? 200 19ms","method":"GET","requestID":"9d721838c76256de180a33d6be03f085","responseTime":19,"status":200,"url":"/devices/640724ce-64c4-4fc0-8348-96efb1b9c341?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1cf622b0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/1b222630-9cc0-4d52-8c7a-53bce43b227f/signaling 200 19ms","method":"POST","requestID":"1cf622b0-442b-11ef-8685-a1e9f27e6f28","responseTime":19,"status":200,"url":"/devices/1b222630-9cc0-4d52-8c7a-53bce43b227f/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0M30.aUqgwSRFd6FJwCyfStUYv84Ck-QJUYRiU9RgEpMQ2Es","level":"info","message":"auth send jwt","requestID":"f6bb6e9c9f9916e0bf7cc78fa457d42b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f6bb6e9c9f9916e0bf7cc78fa457d42b","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4781fefa-a231-40c5-a9ac-89016027008b"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"1fafb806d91b55cc756dbbe2f0d9e45a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f6bb6e9c9f9916e0bf7cc78fa457d42b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4781fefa-a231-40c5-a9ac-89016027008b"},"level":"info","message":"Building connection plan","requestID":"1fafb806d91b55cc756dbbe2f0d9e45a"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"f1c51a00-0bbd-4c3a-9d84-b17d6c9fd310"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"410d129a-4560-48e5-b65c-07a897b02f7f"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"26e510f6-9327-4098-9ebb-0818d83f60dd"}]},"level":"info","message":"Built pairwise service configurations","requestID":"1fafb806d91b55cc756dbbe2f0d9e45a"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/640724ce-64c4-4fc0-8348-96efb1b9c341"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/1b222630-9cc0-4d52-8c7a-53bce43b227f"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"1fafb806d91b55cc756dbbe2f0d9e45a"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"1cf97e10-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":718,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:43Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":718,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.076606,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1b222630-9cc0-4d52-8c7a-53bce43b227f","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f6bb6e9c9f9916e0bf7cc78fa457d42b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/1b222630-9cc0-4d52-8c7a-53bce43b227f","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213743,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0M30.aUqgwSRFd6FJwCyfStUYv84Ck-QJUYRiU9RgEpMQ2Es"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f6bb6e9c9f9916e0bf7cc78fa457d42b","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:35236","level":"info","msg":"Received request.","req_id":719,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:43Z"} authorization-1 | {"client_addr":"127.0.0.1:35236","level":"info","msg":"Sent response.","req_id":719,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.365365,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:43Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1cf97e10-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213743,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0M30.aUqgwSRFd6FJwCyfStUYv84Ck-QJUYRiU9RgEpMQ2Es"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1cf97e10-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1b222630-9cc0-4d52-8c7a-53bce43b227f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1b222630-9cc0-4d52-8c7a-53bce43b227f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:40.938985931Z"}]},"request_id":"f816b91b-c65c-4c19-ae9d-d85796ae00cf","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213743.2259214} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f6bb6e9c9f9916e0bf7cc78fa457d42b","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f6bb6e9c9f9916e0bf7cc78fa457d42b"} gateway-1 | {"time_local":"17/Jul/2024:10:55:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/1b222630-9cc0-4d52-8c7a-53bce43b227f? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f6bb6e9c9f9916e0bf7cc78fa457d42b"} device-1 | {"level":"info","message":"GET /devices/1b222630-9cc0-4d52-8c7a-53bce43b227f? 200 16ms","method":"GET","requestID":"f6bb6e9c9f9916e0bf7cc78fa457d42b","responseTime":16,"status":200,"url":"/devices/1b222630-9cc0-4d52-8c7a-53bce43b227f?"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"b745aa2a-8c76-4c8e-a5b4-0d4fcedfb6b6","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213743.2336001} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7b0a0374-d8f2-4ce7-85f8-846cc02ed861","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213743.2340653} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"1cf97e10-442b-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"1cf97e10-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"1cf97e10-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/f2431f55-4bdb-4263-98c8-4510b872ede6'","requestID":"1cf97e10-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/f2431f55-4bdb-4263-98c8-4510b872ede6'","requestID":"1cf97e10-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"1cf97e10-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 32ms","method":"POST","requestID":"1cf97e10-442b-11ef-8685-a1e9f27e6f28","responseTime":32,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"1cf97e10-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/f2431f55-4bdb-4263-98c8-4510b872ede6","device":"1b222630-9cc0-4d52-8c7a-53bce43b227f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":true} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4781fefa-a231-40c5-a9ac-89016027008b"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"1fafb806d91b55cc756dbbe2f0d9e45a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1d02f3f0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":720,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:43Z"} device-1 | {"device":"1b222630-9cc0-4d52-8c7a-53bce43b227f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"1b222630-9cc0-4d52-8c7a-53bce43b227f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F640724ce-64c4-4fc0-8348-96efb1b9c341","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4b14528a-f902-477f-8c7c-f792f838c41d","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213743.283302} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":720,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.585125,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/640724ce-64c4-4fc0-8348-96efb1b9c341","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1d02f3f0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/640724ce-64c4-4fc0-8348-96efb1b9c341","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1d02f3f0-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"content":{"sdp":"v=0\r\no=- 1900298515613467348 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:X+Rn\r\na=ice-pwd:iEx4JVW0/h1GNBg9sBrXL1o4\r\na=ice-options:trickle\r\na=fingerprint:sha-256 E7:DD:F9:9B:8D:2B:99:94:7D:90:F6:52:BF:1A:05:47:10:66:0C:0D:4A:88:9F:1A:09:52:FE:06:E5:17:B5:C7\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"1b222630-9cc0-4d52-8c7a-53bce43b227f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1d02f3f0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/640724ce-64c4-4fc0-8348-96efb1b9c341/signaling 200 11ms","method":"POST","requestID":"1d02f3f0-442b-11ef-8685-a1e9f27e6f28","responseTime":11,"status":200,"url":"/devices/640724ce-64c4-4fc0-8348-96efb1b9c341/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1d04efc0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":721,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:43Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1b222630-9cc0-4d52-8c7a-53bce43b227f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c2fbfed0-92c4-4001-936c-0d73559273a1","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213743.2966635} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":721,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.47494,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1b222630-9cc0-4d52-8c7a-53bce43b227f","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1d04efc0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1b222630-9cc0-4d52-8c7a-53bce43b227f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1d04efc0-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1d04efc0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/1b222630-9cc0-4d52-8c7a-53bce43b227f/signaling 200 8ms","method":"POST","requestID":"1d04efc0-442b-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/devices/1b222630-9cc0-4d52-8c7a-53bce43b227f/signaling"} device-1 | {"device":"1b222630-9cc0-4d52-8c7a-53bce43b227f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"640724ce-64c4-4fc0-8348-96efb1b9c341","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"f2431f55-4bdb-4263-98c8-4510b872ede6","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"640724ce-64c4-4fc0-8348-96efb1b9c341","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"640724ce-64c4-4fc0-8348-96efb1b9c341","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"640724ce-64c4-4fc0-8348-96efb1b9c341","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"640724ce-64c4-4fc0-8348-96efb1b9c341","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/f2431f55-4bdb-4263-98c8-4510b872ede6' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f2431f55-4bdb-4263-98c8-4510b872ede6","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f4b97d4718993a0c67ee48e9947b96a7","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"f4b97d4718993a0c67ee48e9947b96a7","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/640724ce-64c4-4fc0-8348-96efb1b9c341"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/1b222630-9cc0-4d52-8c7a-53bce43b227f"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/f2431f55-4bdb-4263-98c8-4510b872ede6"}}},"level":"info","message":"received a callback","requestID":"f4b97d4718993a0c67ee48e9947b96a7"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"f4b97d4718993a0c67ee48e9947b96a7","responseTime":7,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:55:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.011","http_referrer":"","http_user_agent":"node-fetch","requestID":"f4b97d4718993a0c67ee48e9947b96a7"} device-1 | {"content":{"candidate":"candidate:730644824 1 udp 2113937151 5b8f793a-cb46-4ce7-913b-8d9267c10259.local 49818 typ host generation 0 ufrag X+Rn network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"1b222630-9cc0-4d52-8c7a-53bce43b227f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2946607911 1 udp 1677729535 141.24.211.56 49818 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag X+Rn network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"1b222630-9cc0-4d52-8c7a-53bce43b227f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:4239135916 1 udp 33562623 141.24.210.113 54750 typ relay raddr 141.24.211.56 rport 49818 generation 0 ufrag X+Rn network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"1b222630-9cc0-4d52-8c7a-53bce43b227f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"1b222630-9cc0-4d52-8c7a-53bce43b227f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/1b222630-9cc0-4d52-8c7a-53bce43b227f'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/1b222630-9cc0-4d52-8c7a-53bce43b227f'"} device-1 | {"data":{"peerconnection":"f2431f55-4bdb-4263-98c8-4510b872ede6","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"640724ce-64c4-4fc0-8348-96efb1b9c341","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"1b222630-9cc0-4d52-8c7a-53bce43b227f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"data":{"peerconnection":"f2431f55-4bdb-4263-98c8-4510b872ede6","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"640724ce-64c4-4fc0-8348-96efb1b9c341","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/f2431f55-4bdb-4263-98c8-4510b872ede6' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f2431f55-4bdb-4263-98c8-4510b872ede6","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1f9b9fda2b220d28522ce358ff7014ad","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"1f9b9fda2b220d28522ce358ff7014ad","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/640724ce-64c4-4fc0-8348-96efb1b9c341"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/1b222630-9cc0-4d52-8c7a-53bce43b227f"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/f2431f55-4bdb-4263-98c8-4510b872ede6"}}},"level":"info","message":"received a callback","requestID":"1f9b9fda2b220d28522ce358ff7014ad"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"1e49f2e0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":722,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:45Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff2431f55-4bdb-4263-98c8-4510b872ede6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7cb45c54-b61b-4ebd-bc2c-482e1b79514f","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213745.428606} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":722,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.545897,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/f2431f55-4bdb-4263-98c8-4510b872ede6","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1e49f2e0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/f2431f55-4bdb-4263-98c8-4510b872ede6","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"1e49f2e0-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"1e49f2e0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /peerconnections/f2431f55-4bdb-4263-98c8-4510b872ede6 200 11ms","method":"GET","requestID":"1e49f2e0-442b-11ef-8685-a1e9f27e6f28","responseTime":11,"status":200,"url":"/peerconnections/f2431f55-4bdb-4263-98c8-4510b872ede6"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 41ms","method":"POST","requestID":"1f9b9fda2b220d28522ce358ff7014ad","responseTime":41,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:55:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.046","http_referrer":"","http_user_agent":"node-fetch","requestID":"1f9b9fda2b220d28522ce358ff7014ad"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1e4f4a10-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":723,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:45Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F640724ce-64c4-4fc0-8348-96efb1b9c341","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"84c9456b-ec28-4e6c-9eb8-85320e748325","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213745.4643075} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":723,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.856964,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:45Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/640724ce-64c4-4fc0-8348-96efb1b9c341","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1e4f4a10-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/640724ce-64c4-4fc0-8348-96efb1b9c341","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"1e4f4a10-442b-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1e4f4a10-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/640724ce-64c4-4fc0-8348-96efb1b9c341/signaling 200 13ms","method":"POST","requestID":"1e4f4a10-442b-11ef-8685-a1e9f27e6f28","responseTime":13,"status":200,"url":"/devices/640724ce-64c4-4fc0-8348-96efb1b9c341/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1e51bb10-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":724,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:45Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1b222630-9cc0-4d52-8c7a-53bce43b227f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"066762fe-30a5-4ad3-b99c-6c3058ff5a38","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213745.4790678} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":724,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.408846,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:45Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1b222630-9cc0-4d52-8c7a-53bce43b227f","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1e51bb10-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1b222630-9cc0-4d52-8c7a-53bce43b227f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"1e51bb10-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1e51bb10-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/1b222630-9cc0-4d52-8c7a-53bce43b227f/signaling 200 12ms","method":"POST","requestID":"1e51bb10-442b-11ef-8685-a1e9f27e6f28","responseTime":12,"status":200,"url":"/devices/1b222630-9cc0-4d52-8c7a-53bce43b227f/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0NX0.F2CIzVP_44f_ABIrYihgsIy7uNl7sLgOuvRz4gfAZZ8","level":"info","message":"auth send jwt","requestID":"fae04e94b72315a7d5c46319cf1026ad"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"fae04e94b72315a7d5c46319cf1026ad","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/4781fefa-a231-40c5-a9ac-89016027008b","requestID":"fae04e94b72315a7d5c46319cf1026ad"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":725,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:45Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":725,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.32893,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/4781fefa-a231-40c5-a9ac-89016027008b","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"fae04e94b72315a7d5c46319cf1026ad","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:http://localhost/experiments/4781fefa-a231-40c5-a9ac-89016027008b","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213745,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0NX0.F2CIzVP_44f_ABIrYihgsIy7uNl7sLgOuvRz4gfAZZ8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fae04e94b72315a7d5c46319cf1026ad","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/4781fefa-a231-40c5-a9ac-89016027008b","requestID":"fae04e94b72315a7d5c46319cf1026ad"} gateway-1 | {"time_local":"17/Jul/2024:10:55:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/4781fefa-a231-40c5-a9ac-89016027008b HTTP/1.1","status": "200","body_bytes_sent":"1288","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"fae04e94b72315a7d5c46319cf1026ad"} experiment-1 | {"level":"info","message":"GET /experiments/4781fefa-a231-40c5-a9ac-89016027008b 200 15ms","method":"GET","requestID":"fae04e94b72315a7d5c46319cf1026ad","responseTime":15,"status":200,"url":"/experiments/4781fefa-a231-40c5-a9ac-89016027008b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0NX0.F2CIzVP_44f_ABIrYihgsIy7uNl7sLgOuvRz4gfAZZ8","level":"info","message":"auth send jwt","requestID":"606823f26cd69122668eb6a0907e1b12"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"606823f26cd69122668eb6a0907e1b12","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/4781fefa-a231-40c5-a9ac-89016027008b","requestID":"606823f26cd69122668eb6a0907e1b12"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":726,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:45Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":726,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.329099,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:45Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/4781fefa-a231-40c5-a9ac-89016027008b","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"606823f26cd69122668eb6a0907e1b12","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:http://localhost/experiments/4781fefa-a231-40c5-a9ac-89016027008b","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213745,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0NX0.F2CIzVP_44f_ABIrYihgsIy7uNl7sLgOuvRz4gfAZZ8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"606823f26cd69122668eb6a0907e1b12","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4781fefa-a231-40c5-a9ac-89016027008b"},"level":"info","message":"Attempting to finish experiment","requestID":"606823f26cd69122668eb6a0907e1b12"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"1e5e1720-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":727,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:45Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":727,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.278695,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:45Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/f2431f55-4bdb-4263-98c8-4510b872ede6","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1e5e1720-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"peerconnection:http://localhost/peerconnections/f2431f55-4bdb-4263-98c8-4510b872ede6","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213745,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0NX0.F2CIzVP_44f_ABIrYihgsIy7uNl7sLgOuvRz4gfAZZ8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1e5e1720-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/f2431f55-4bdb-4263-98c8-4510b872ede6","device":"1b222630-9cc0-4d52-8c7a-53bce43b227f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"640724ce-64c4-4fc0-8348-96efb1b9c341","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"640724ce-64c4-4fc0-8348-96efb1b9c341","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"640724ce-64c4-4fc0-8348-96efb1b9c341","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/f2431f55-4bdb-4263-98c8-4510b872ede6' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/f2431f55-4bdb-4263-98c8-4510b872ede6' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f2431f55-4bdb-4263-98c8-4510b872ede6","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff2431f55-4bdb-4263-98c8-4510b872ede6': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff2431f55-4bdb-4263-98c8-4510b872ede6","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]},"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":null},"raw_response":{},"request_id":"1a0d911b-1e65-444f-a16d-ab279df59ef7","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213745.5774634} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"df01b20cf7a79365c616db3e84e9a48c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b152dd69-3949-40a2-a92e-56491ec84641","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213745.5778172} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"df01b20cf7a79365c616db3e84e9a48c","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"1e5e1720-442b-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"40955bfad57ce8a4d55d6fba3a6f7604","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"40955bfad57ce8a4d55d6fba3a6f7604","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/640724ce-64c4-4fc0-8348-96efb1b9c341"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/1b222630-9cc0-4d52-8c7a-53bce43b227f"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/f2431f55-4bdb-4263-98c8-4510b872ede6"}}},"level":"info","message":"received a callback","requestID":"df01b20cf7a79365c616db3e84e9a48c"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/640724ce-64c4-4fc0-8348-96efb1b9c341"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/1b222630-9cc0-4d52-8c7a-53bce43b227f"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/f2431f55-4bdb-4263-98c8-4510b872ede6"}}},"level":"info","message":"received a callback","requestID":"40955bfad57ce8a4d55d6fba3a6f7604"} device-1 | {"data":{"peerconnection":"f2431f55-4bdb-4263-98c8-4510b872ede6","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"1e5e1720-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"DELETE /peerconnections/f2431f55-4bdb-4263-98c8-4510b872ede6 204 45ms","method":"DELETE","requestID":"1e5e1720-442b-11ef-8685-a1e9f27e6f28","responseTime":45,"status":204,"url":"/peerconnections/f2431f55-4bdb-4263-98c8-4510b872ede6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4781fefa-a231-40c5-a9ac-89016027008b"},"level":"info","message":"Successfully finished experiment","requestID":"606823f26cd69122668eb6a0907e1b12"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1e6765f0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":728,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:45Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F640724ce-64c4-4fc0-8348-96efb1b9c341","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"016a0a36-e3b7-42b3-a336-0aa378c2c5f8","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213745.6216793} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":728,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.831832,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:45Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/640724ce-64c4-4fc0-8348-96efb1b9c341","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1e6765f0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/640724ce-64c4-4fc0-8348-96efb1b9c341","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"1e6765f0-442b-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1e6765f0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/640724ce-64c4-4fc0-8348-96efb1b9c341/signaling 200 13ms","method":"POST","requestID":"1e6765f0-442b-11ef-8685-a1e9f27e6f28","responseTime":13,"status":200,"url":"/devices/640724ce-64c4-4fc0-8348-96efb1b9c341/signaling"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F4781fefa-a231-40c5-a9ac-89016027008b': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F4781fefa-a231-40c5-a9ac-89016027008b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]},"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":null},"raw_response":{},"request_id":"e9fcadfd-6048-4b14-86e5-fa8ba502ea51","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213745.6287937} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2603b9ab-e990-41c2-9df8-396d86a97c39","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213745.6290445} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"606823f26cd69122668eb6a0907e1b12","responseTime":17,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1e69afe0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":729,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:45Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1b222630-9cc0-4d52-8c7a-53bce43b227f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7f99f966-a434-4008-a903-1307d648d255","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213745.6365824} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":729,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.628672,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:45Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1b222630-9cc0-4d52-8c7a-53bce43b227f","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1e69afe0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1b222630-9cc0-4d52-8c7a-53bce43b227f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"1e69afe0-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1e69afe0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/1b222630-9cc0-4d52-8c7a-53bce43b227f/signaling 200 12ms","method":"POST","requestID":"1e69afe0-442b-11ef-8685-a1e9f27e6f28","responseTime":12,"status":200,"url":"/devices/1b222630-9cc0-4d52-8c7a-53bce43b227f/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/4781fefa-a231-40c5-a9ac-89016027008b","requestID":"606823f26cd69122668eb6a0907e1b12"} gateway-1 | {"time_local":"17/Jul/2024:10:55:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/4781fefa-a231-40c5-a9ac-89016027008b HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.162","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"606823f26cd69122668eb6a0907e1b12"} experiment-1 | {"level":"info","message":"DELETE /experiments/4781fefa-a231-40c5-a9ac-89016027008b 204 158ms","method":"DELETE","requestID":"606823f26cd69122668eb6a0907e1b12","responseTime":158,"status":204,"url":"/experiments/4781fefa-a231-40c5-a9ac-89016027008b"} gateway-1 | {"time_local":"17/Jul/2024:10:55:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3193","request_time":"4.216","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"03ba42f221e72ba7939e4187f14410ee"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 119ms","method":"POST","requestID":"df01b20cf7a79365c616db3e84e9a48c","responseTime":119,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:55:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.122","http_referrer":"","http_user_agent":"node-fetch","requestID":"df01b20cf7a79365c616db3e84e9a48c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 119ms","method":"POST","requestID":"40955bfad57ce8a4d55d6fba3a6f7604","responseTime":119,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:55:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.123","http_referrer":"","http_user_agent":"node-fetch","requestID":"40955bfad57ce8a4d55d6fba3a6f7604"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0NX0.F2CIzVP_44f_ABIrYihgsIy7uNl7sLgOuvRz4gfAZZ8","level":"info","message":"auth send jwt","requestID":"d9b617e2855178cabbb1892c155cb0b9"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d9b617e2855178cabbb1892c155cb0b9","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"d9b617e2855178cabbb1892c155cb0b9"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":730,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:45Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":730,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.752362,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:45Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"d9b617e2855178cabbb1892c155cb0b9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213745,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0NX0.F2CIzVP_44f_ABIrYihgsIy7uNl7sLgOuvRz4gfAZZ8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d9b617e2855178cabbb1892c155cb0b9","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"17/Jul/2024:10:55:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2702","request_time":"2.764","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"6cf30f96ab052bdd21889c62add0aa1b"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/640724ce-64c4-4fc0-8348-96efb1b9c341' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F631b863d-f9fd-4ec3-9e4b-b8de10239ac7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"3914570d-6683-49e5-a32e-f35eb3c23a4a","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213745.7205746} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d9b617e2855178cabbb1892c155cb0b9","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/1b222630-9cc0-4d52-8c7a-53bce43b227f' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8e5d3cd1-5d0f-4564-8a41-c7ed464bdf51","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213745.7249436} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"d9b617e2855178cabbb1892c155cb0b9","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F631b863d-f9fd-4ec3-9e4b-b8de10239ac7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"056e54d3-ec77-4fe5-be93-c1f76b20b957","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213745.7343261} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8e55b8ff-f14f-452d-a4e0-6f59d6abca39","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213745.7345908} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"d9b617e2855178cabbb1892c155cb0b9","responseTime":15,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F631b863d-f9fd-4ec3-9e4b-b8de10239ac7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F631b863d-f9fd-4ec3-9e4b-b8de10239ac7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:45.734297030Z"}]},"request_id":"44668f4d-b252-4fdb-be20-3e7c6e20b43e","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213745.7432022} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d9b617e2855178cabbb1892c155cb0b9","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"d9b617e2855178cabbb1892c155cb0b9"} gateway-1 | {"time_local":"17/Jul/2024:10:55:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d9b617e2855178cabbb1892c155cb0b9"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"d9b617e2855178cabbb1892c155cb0b9","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0NX0.F2CIzVP_44f_ABIrYihgsIy7uNl7sLgOuvRz4gfAZZ8","level":"info","message":"auth send jwt","requestID":"c65a6c03abfe0bacfc37c9e1a93fcb11"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"c65a6c03abfe0bacfc37c9e1a93fcb11","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"c65a6c03abfe0bacfc37c9e1a93fcb11"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":731,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:45Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":731,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.72667,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:45Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"c65a6c03abfe0bacfc37c9e1a93fcb11","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213745,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0NX0.F2CIzVP_44f_ABIrYihgsIy7uNl7sLgOuvRz4gfAZZ8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c65a6c03abfe0bacfc37c9e1a93fcb11","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff490dd30-c0f4-4c28-af56-e135d3248df8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"9d1e937f-e239-4f12-804f-52dc1ea43a57","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213745.774739} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"c65a6c03abfe0bacfc37c9e1a93fcb11","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b4229d1f-5937-4308-a6ca-49918426f90e","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213745.7791512} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"c65a6c03abfe0bacfc37c9e1a93fcb11","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff490dd30-c0f4-4c28-af56-e135d3248df8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"1f72b93e-31af-4f79-931c-89b58effe3b7","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213745.7901301} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3538de30-388b-4114-a1c5-b3ca34d3c135","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213745.7903206} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"c65a6c03abfe0bacfc37c9e1a93fcb11","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff490dd30-c0f4-4c28-af56-e135d3248df8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff490dd30-c0f4-4c28-af56-e135d3248df8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:45.790106675Z"}]},"request_id":"351653be-5ce1-4806-9a84-8c404d70bc51","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213745.7940173} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c65a6c03abfe0bacfc37c9e1a93fcb11","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"c65a6c03abfe0bacfc37c9e1a93fcb11"} gateway-1 | {"time_local":"17/Jul/2024:10:55:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c65a6c03abfe0bacfc37c9e1a93fcb11"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"c65a6c03abfe0bacfc37c9e1a93fcb11","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0Nn0.SHtdhyy7-KL-KEBzd5jBufncot5nwVW4Rm2kHrdrafo","level":"info","message":"auth send jwt","requestID":"33a7dd446487ff1bbc94bfe51eb32293"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"33a7dd446487ff1bbc94bfe51eb32293","responseTime":6,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0Nn0.SHtdhyy7-KL-KEBzd5jBufncot5nwVW4Rm2kHrdrafo","level":"info","message":"auth send jwt","requestID":"af86caee04cbe06168ab5bd6338fddd0"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"33a7dd446487ff1bbc94bfe51eb32293"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"af86caee04cbe06168ab5bd6338fddd0","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"af86caee04cbe06168ab5bd6338fddd0"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":732,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:46Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":732,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.631666,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:46Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/631b863d-f9fd-4ec3-9e4b-b8de10239ac7","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"33a7dd446487ff1bbc94bfe51eb32293","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/631b863d-f9fd-4ec3-9e4b-b8de10239ac7","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213746,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0Nn0.SHtdhyy7-KL-KEBzd5jBufncot5nwVW4Rm2kHrdrafo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"33a7dd446487ff1bbc94bfe51eb32293","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:35236","level":"info","msg":"Received request.","req_id":733,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:46Z"} authorization-1 | {"client_addr":"127.0.0.1:35236","level":"info","msg":"Sent response.","req_id":733,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.695073,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:46Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f490dd30-c0f4-4c28-af56-e135d3248df8","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"af86caee04cbe06168ab5bd6338fddd0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/f490dd30-c0f4-4c28-af56-e135d3248df8","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213746,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0Nn0.SHtdhyy7-KL-KEBzd5jBufncot5nwVW4Rm2kHrdrafo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"af86caee04cbe06168ab5bd6338fddd0","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F631b863d-f9fd-4ec3-9e4b-b8de10239ac7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F631b863d-f9fd-4ec3-9e4b-b8de10239ac7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:45.734297030Z"}]},"request_id":"fa568391-e2b9-4685-a587-b0043fe47c5c","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213746.283141} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"33a7dd446487ff1bbc94bfe51eb32293","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff490dd30-c0f4-4c28-af56-e135d3248df8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff490dd30-c0f4-4c28-af56-e135d3248df8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:45.790106675Z"}]},"request_id":"f9c086b4-4701-4e4d-9ad6-25132e3bfad4","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213746.283788} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"af86caee04cbe06168ab5bd6338fddd0","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"46f7183d-4861-4045-b11e-d9cf79d42ff3","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213746.287855} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"33a7dd446487ff1bbc94bfe51eb32293","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8527a67e-e971-4723-a459-5d0a13a75cf9","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213746.291474} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"af86caee04cbe06168ab5bd6338fddd0","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff490dd30-c0f4-4c28-af56-e135d3248df8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff490dd30-c0f4-4c28-af56-e135d3248df8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:45.790106675Z"}]},"request_id":"ac46255a-1456-4e2d-aa44-0dd5367e8b29","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213746.2941482} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"af86caee04cbe06168ab5bd6338fddd0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"af86caee04cbe06168ab5bd6338fddd0"} gateway-1 | {"time_local":"17/Jul/2024:10:55:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/f490dd30-c0f4-4c28-af56-e135d3248df8 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.031","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"af86caee04cbe06168ab5bd6338fddd0"} device-1 | {"level":"info","message":"PATCH /devices/f490dd30-c0f4-4c28-af56-e135d3248df8 200 22ms","method":"PATCH","requestID":"af86caee04cbe06168ab5bd6338fddd0","responseTime":22,"status":200,"url":"/devices/f490dd30-c0f4-4c28-af56-e135d3248df8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0Nn0.SHtdhyy7-KL-KEBzd5jBufncot5nwVW4Rm2kHrdrafo","level":"info","message":"auth send jwt","requestID":"5d61111e7b637d58f98ef739e3855d29"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5d61111e7b637d58f98ef739e3855d29","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"5d61111e7b637d58f98ef739e3855d29"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F631b863d-f9fd-4ec3-9e4b-b8de10239ac7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F631b863d-f9fd-4ec3-9e4b-b8de10239ac7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:45.734297030Z"}]},"request_id":"c7adc636-da36-4c00-9227-5b39fc845ea1","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213746.3059967} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"33a7dd446487ff1bbc94bfe51eb32293","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":734,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:46Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":734,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.843578,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:46Z"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"33a7dd446487ff1bbc94bfe51eb32293"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f490dd30-c0f4-4c28-af56-e135d3248df8","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"5d61111e7b637d58f98ef739e3855d29","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/f490dd30-c0f4-4c28-af56-e135d3248df8","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213746,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0Nn0.SHtdhyy7-KL-KEBzd5jBufncot5nwVW4Rm2kHrdrafo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"5d61111e7b637d58f98ef739e3855d29","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"17/Jul/2024:10:55:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/631b863d-f9fd-4ec3-9e4b-b8de10239ac7 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.042","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"33a7dd446487ff1bbc94bfe51eb32293"} device-1 | {"level":"info","message":"PATCH /devices/631b863d-f9fd-4ec3-9e4b-b8de10239ac7 200 35ms","method":"PATCH","requestID":"33a7dd446487ff1bbc94bfe51eb32293","responseTime":35,"status":200,"url":"/devices/631b863d-f9fd-4ec3-9e4b-b8de10239ac7"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0Nn0.SHtdhyy7-KL-KEBzd5jBufncot5nwVW4Rm2kHrdrafo","level":"info","message":"auth send jwt","requestID":"e041232eb39c4727c662da2522ec095e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e041232eb39c4727c662da2522ec095e","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"e041232eb39c4727c662da2522ec095e"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":735,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:46Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":735,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.60408,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:46Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/631b863d-f9fd-4ec3-9e4b-b8de10239ac7","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"e041232eb39c4727c662da2522ec095e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/631b863d-f9fd-4ec3-9e4b-b8de10239ac7","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213746,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0Nn0.SHtdhyy7-KL-KEBzd5jBufncot5nwVW4Rm2kHrdrafo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e041232eb39c4727c662da2522ec095e","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"5d61111e7b637d58f98ef739e3855d29"} device-1 | {"level":"info","message":"POST /devices/f490dd30-c0f4-4c28-af56-e135d3248df8/websocket 200 16ms","method":"POST","requestID":"5d61111e7b637d58f98ef739e3855d29","responseTime":16,"status":200,"url":"/devices/f490dd30-c0f4-4c28-af56-e135d3248df8/websocket"} gateway-1 | {"time_local":"17/Jul/2024:10:55:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/f490dd30-c0f4-4c28-af56-e135d3248df8/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.022","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"5d61111e7b637d58f98ef739e3855d29"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"e041232eb39c4727c662da2522ec095e"} gateway-1 | {"time_local":"17/Jul/2024:10:55:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/631b863d-f9fd-4ec3-9e4b-b8de10239ac7/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.021","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"e041232eb39c4727c662da2522ec095e"} device-1 | {"level":"info","message":"POST /devices/631b863d-f9fd-4ec3-9e4b-b8de10239ac7/websocket 200 16ms","method":"POST","requestID":"e041232eb39c4727c662da2522ec095e","responseTime":16,"status":200,"url":"/devices/631b863d-f9fd-4ec3-9e4b-b8de10239ac7/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/f490dd30-c0f4-4c28-af56-e135d3248df8' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/631b863d-f9fd-4ec3-9e4b-b8de10239ac7' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0Nn0.SHtdhyy7-KL-KEBzd5jBufncot5nwVW4Rm2kHrdrafo","level":"info","message":"auth send jwt","requestID":"c3cc72e49ad48c0e137d468226dbf9bc"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"c3cc72e49ad48c0e137d468226dbf9bc","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c3cc72e49ad48c0e137d468226dbf9bc"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":736,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:46Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":736,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.071473,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/631b863d-f9fd-4ec3-9e4b-b8de10239ac7","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"c3cc72e49ad48c0e137d468226dbf9bc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/631b863d-f9fd-4ec3-9e4b-b8de10239ac7","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213746,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0Nn0.SHtdhyy7-KL-KEBzd5jBufncot5nwVW4Rm2kHrdrafo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c3cc72e49ad48c0e137d468226dbf9bc","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F631b863d-f9fd-4ec3-9e4b-b8de10239ac7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F631b863d-f9fd-4ec3-9e4b-b8de10239ac7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:45.734297030Z"}]},"request_id":"54bb3c1c-b4f4-4027-9b6d-f13f23bdb621","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213746.36546} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"c3cc72e49ad48c0e137d468226dbf9bc","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c3cc72e49ad48c0e137d468226dbf9bc"} gateway-1 | {"time_local":"17/Jul/2024:10:55:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/631b863d-f9fd-4ec3-9e4b-b8de10239ac7? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c3cc72e49ad48c0e137d468226dbf9bc"} device-1 | {"level":"info","message":"GET /devices/631b863d-f9fd-4ec3-9e4b-b8de10239ac7? 200 13ms","method":"GET","requestID":"c3cc72e49ad48c0e137d468226dbf9bc","responseTime":13,"status":200,"url":"/devices/631b863d-f9fd-4ec3-9e4b-b8de10239ac7?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0Nn0.SHtdhyy7-KL-KEBzd5jBufncot5nwVW4Rm2kHrdrafo","level":"info","message":"auth send jwt","requestID":"175240bd823e73de7056b6a7c40a6283"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"175240bd823e73de7056b6a7c40a6283","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"175240bd823e73de7056b6a7c40a6283"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":737,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:46Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":737,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.285885,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f490dd30-c0f4-4c28-af56-e135d3248df8","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"175240bd823e73de7056b6a7c40a6283","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/f490dd30-c0f4-4c28-af56-e135d3248df8","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213746,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0Nn0.SHtdhyy7-KL-KEBzd5jBufncot5nwVW4Rm2kHrdrafo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"175240bd823e73de7056b6a7c40a6283","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff490dd30-c0f4-4c28-af56-e135d3248df8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff490dd30-c0f4-4c28-af56-e135d3248df8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:45.790106675Z"}]},"request_id":"28516a23-9abf-45bc-b1df-658c6970bb94","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213746.3831823} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"175240bd823e73de7056b6a7c40a6283","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"175240bd823e73de7056b6a7c40a6283"} gateway-1 | {"time_local":"17/Jul/2024:10:55:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f490dd30-c0f4-4c28-af56-e135d3248df8? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"175240bd823e73de7056b6a7c40a6283"} device-1 | {"level":"info","message":"GET /devices/f490dd30-c0f4-4c28-af56-e135d3248df8? 200 13ms","method":"GET","requestID":"175240bd823e73de7056b6a7c40a6283","responseTime":13,"status":200,"url":"/devices/f490dd30-c0f4-4c28-af56-e135d3248df8?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0Nn0.SHtdhyy7-KL-KEBzd5jBufncot5nwVW4Rm2kHrdrafo","level":"info","message":"auth send jwt","requestID":"981d37daadd25873eaf1b75872cf2df3"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"981d37daadd25873eaf1b75872cf2df3","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"981d37daadd25873eaf1b75872cf2df3"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":738,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:46Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":738,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.716894,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:46Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"981d37daadd25873eaf1b75872cf2df3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213746,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0Nn0.SHtdhyy7-KL-KEBzd5jBufncot5nwVW4Rm2kHrdrafo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"981d37daadd25873eaf1b75872cf2df3","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c6281fb5-f7a4-47cb-8f6d-caf171eb7671"},"level":"info","message":"Attempting to run experiment","requestID":"981d37daadd25873eaf1b75872cf2df3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c6281fb5-f7a4-47cb-8f6d-caf171eb7671"},"level":"info","message":"Attempting to book experiment","requestID":"981d37daadd25873eaf1b75872cf2df3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c6281fb5-f7a4-47cb-8f6d-caf171eb7671"},"level":"info","message":"Successfully booked experiment","requestID":"981d37daadd25873eaf1b75872cf2df3"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1ee3c1e0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1ee41000-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":739,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:46Z"} authorization-1 | {"client_addr":"127.0.0.1:35236","level":"info","msg":"Received request.","req_id":740,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:46Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":739,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.86492,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/631b863d-f9fd-4ec3-9e4b-b8de10239ac7","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1ee3c1e0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/631b863d-f9fd-4ec3-9e4b-b8de10239ac7","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213746,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0Nn0.SHtdhyy7-KL-KEBzd5jBufncot5nwVW4Rm2kHrdrafo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1ee3c1e0-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:35236","level":"info","msg":"Sent response.","req_id":740,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.970951,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f490dd30-c0f4-4c28-af56-e135d3248df8","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1ee41000-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/f490dd30-c0f4-4c28-af56-e135d3248df8","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213746,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0Nn0.SHtdhyy7-KL-KEBzd5jBufncot5nwVW4Rm2kHrdrafo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1ee41000-442b-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F631b863d-f9fd-4ec3-9e4b-b8de10239ac7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F631b863d-f9fd-4ec3-9e4b-b8de10239ac7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:45.734297030Z"}]},"request_id":"56b45599-3902-4c61-ae49-3e49842049dd","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213746.4420807} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"1ee3c1e0-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff490dd30-c0f4-4c28-af56-e135d3248df8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff490dd30-c0f4-4c28-af56-e135d3248df8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:45.790106675Z"}]},"request_id":"ca03eb76-1c60-4552-a69b-15ea0f3b8b7e","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213746.4431553} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1ee41000-442b-11ef-8685-a1e9f27e6f28","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1ee3c1e0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/631b863d-f9fd-4ec3-9e4b-b8de10239ac7? 200 20ms","method":"GET","requestID":"1ee3c1e0-442b-11ef-8685-a1e9f27e6f28","responseTime":20,"status":200,"url":"/devices/631b863d-f9fd-4ec3-9e4b-b8de10239ac7?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1ee41000-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/f490dd30-c0f4-4c28-af56-e135d3248df8? 200 19ms","method":"GET","requestID":"1ee41000-442b-11ef-8685-a1e9f27e6f28","responseTime":19,"status":200,"url":"/devices/f490dd30-c0f4-4c28-af56-e135d3248df8?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c6281fb5-f7a4-47cb-8f6d-caf171eb7671"},"level":"info","message":"Setting up experiment","requestID":"981d37daadd25873eaf1b75872cf2df3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c6281fb5-f7a4-47cb-8f6d-caf171eb7671"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"981d37daadd25873eaf1b75872cf2df3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c6281fb5-f7a4-47cb-8f6d-caf171eb7671"},"level":"info","message":"Successfully locked booking for experiment","requestID":"981d37daadd25873eaf1b75872cf2df3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c6281fb5-f7a4-47cb-8f6d-caf171eb7671"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"981d37daadd25873eaf1b75872cf2df3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c6281fb5-f7a4-47cb-8f6d-caf171eb7671"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"981d37daadd25873eaf1b75872cf2df3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c6281fb5-f7a4-47cb-8f6d-caf171eb7671"},"level":"info","message":"Attempting to update booking for experiment","requestID":"981d37daadd25873eaf1b75872cf2df3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c6281fb5-f7a4-47cb-8f6d-caf171eb7671"},"level":"info","message":"Successfully updated booking for experiment","requestID":"981d37daadd25873eaf1b75872cf2df3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c6281fb5-f7a4-47cb-8f6d-caf171eb7671"},"level":"info","message":"Successfully set up experiment","requestID":"981d37daadd25873eaf1b75872cf2df3"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1eeee570-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1eef3390-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1eef5aa0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":741,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:46Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":741,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.58461,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:46Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c6281fb5-f7a4-47cb-8f6d-caf171eb7671"},"level":"info","message":"Successfully running experiment","requestID":"981d37daadd25873eaf1b75872cf2df3"} authorization-1 | {"client_addr":"127.0.0.1:35236","level":"info","msg":"Received request.","req_id":742,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:46Z"} authorization-1 | {"client_addr":"127.0.0.1:35236","level":"info","msg":"Sent response.","req_id":742,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.300918,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/631b863d-f9fd-4ec3-9e4b-b8de10239ac7","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1eeee570-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/631b863d-f9fd-4ec3-9e4b-b8de10239ac7","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213746,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0Nn0.SHtdhyy7-KL-KEBzd5jBufncot5nwVW4Rm2kHrdrafo"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"1eeee570-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f490dd30-c0f4-4c28-af56-e135d3248df8","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1eef3390-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/f490dd30-c0f4-4c28-af56-e135d3248df8","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213746,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0Nn0.SHtdhyy7-KL-KEBzd5jBufncot5nwVW4Rm2kHrdrafo"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"1eef3390-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F631b863d-f9fd-4ec3-9e4b-b8de10239ac7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F631b863d-f9fd-4ec3-9e4b-b8de10239ac7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:45.734297030Z"}]},"request_id":"75f2faba-37dd-4956-a6cc-23a606855e93","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213746.5159192} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff490dd30-c0f4-4c28-af56-e135d3248df8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff490dd30-c0f4-4c28-af56-e135d3248df8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:45.790106675Z"}]},"request_id":"2cdf26e5-686c-43a8-ba34-087c64301234","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213746.5167463} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1eeee570-442b-11ef-8685-a1e9f27e6f28","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1eef3390-442b-11ef-8685-a1e9f27e6f28","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:35240","level":"info","msg":"Received request.","req_id":743,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:46Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F631b863d-f9fd-4ec3-9e4b-b8de10239ac7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4fc830c9-243d-4930-b8c6-727d73735fd0","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213746.518706} authorization-1 | {"client_addr":"127.0.0.1:35240","level":"info","msg":"Sent response.","req_id":743,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.574983,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/631b863d-f9fd-4ec3-9e4b-b8de10239ac7","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1eef5aa0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/631b863d-f9fd-4ec3-9e4b-b8de10239ac7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"1eef5aa0-442b-11ef-8685-a1e9f27e6f28","responseTime":11,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1eeee570-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/631b863d-f9fd-4ec3-9e4b-b8de10239ac7? 200 19ms","method":"GET","requestID":"1eeee570-442b-11ef-8685-a1e9f27e6f28","responseTime":19,"status":200,"url":"/devices/631b863d-f9fd-4ec3-9e4b-b8de10239ac7?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1eef3390-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/f490dd30-c0f4-4c28-af56-e135d3248df8? 200 18ms","method":"GET","requestID":"1eef3390-442b-11ef-8685-a1e9f27e6f28","responseTime":18,"status":200,"url":"/devices/f490dd30-c0f4-4c28-af56-e135d3248df8?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1eef5aa0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/631b863d-f9fd-4ec3-9e4b-b8de10239ac7/signaling 200 18ms","method":"POST","requestID":"1eef5aa0-442b-11ef-8685-a1e9f27e6f28","responseTime":18,"status":200,"url":"/devices/631b863d-f9fd-4ec3-9e4b-b8de10239ac7/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1ef240d0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1ef267e0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":744,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:46Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":744,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.452929,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:46Z"} authorization-1 | {"client_addr":"127.0.0.1:35236","level":"info","msg":"Received request.","req_id":745,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:46Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F631b863d-f9fd-4ec3-9e4b-b8de10239ac7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"655f886a-2f2d-47b6-b7f5-9704aa22c99d","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213746.5293093} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc6281fb5-f7a4-47cb-8f6d-caf171eb7671#owner@http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc6281fb5-f7a4-47cb-8f6d-caf171eb7671","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"5bcb22d0-b0f4-4857-bf40-bd4405e0b436","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213746.5299065} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d6ad6482-fb29-4895-9792-36c7fbf844a2","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213746.530254} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/631b863d-f9fd-4ec3-9e4b-b8de10239ac7","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1ef240d0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/631b863d-f9fd-4ec3-9e4b-b8de10239ac7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"1ef240d0-442b-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:35236","level":"info","msg":"Sent response.","req_id":745,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.916468,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:46Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff490dd30-c0f4-4c28-af56-e135d3248df8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"66c838e0-ec5d-4fa0-9f41-926872f02899","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213746.5329676} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"981d37daadd25873eaf1b75872cf2df3","responseTime":23,"status":200,"url":"/relations/update"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f490dd30-c0f4-4c28-af56-e135d3248df8","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1ef267e0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f490dd30-c0f4-4c28-af56-e135d3248df8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"1ef267e0-442b-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1ef240d0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/631b863d-f9fd-4ec3-9e4b-b8de10239ac7/signaling 200 14ms","method":"POST","requestID":"1ef240d0-442b-11ef-8685-a1e9f27e6f28","responseTime":14,"status":200,"url":"/devices/631b863d-f9fd-4ec3-9e4b-b8de10239ac7/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1ef267e0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/f490dd30-c0f4-4c28-af56-e135d3248df8/signaling 200 14ms","method":"POST","requestID":"1ef267e0-442b-11ef-8685-a1e9f27e6f28","responseTime":14,"status":200,"url":"/devices/f490dd30-c0f4-4c28-af56-e135d3248df8/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1ef4fff0-442b-11ef-8685-a1e9f27e6f28"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/c6281fb5-f7a4-47cb-8f6d-caf171eb7671","user":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"981d37daadd25873eaf1b75872cf2df3"} gateway-1 | {"time_local":"17/Jul/2024:10:55:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1219","request_time":"0.156","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"981d37daadd25873eaf1b75872cf2df3"} experiment-1 | {"level":"info","message":"POST /experiments? 201 150ms","method":"POST","requestID":"981d37daadd25873eaf1b75872cf2df3","responseTime":150,"status":201,"url":"/experiments?"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":746,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:46Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff490dd30-c0f4-4c28-af56-e135d3248df8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6bc5c703-fa3a-415b-8df9-091d61bcf468","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213746.5480843} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":746,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.44336,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:46Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0Nn0.SHtdhyy7-KL-KEBzd5jBufncot5nwVW4Rm2kHrdrafo","level":"info","message":"auth send jwt","requestID":"7cba3e7d91e37852ef4dbfbe802d0c0d"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f490dd30-c0f4-4c28-af56-e135d3248df8","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1ef4fff0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f490dd30-c0f4-4c28-af56-e135d3248df8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"7cba3e7d91e37852ef4dbfbe802d0c0d","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"1ef4fff0-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7cba3e7d91e37852ef4dbfbe802d0c0d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1ef4fff0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":747,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:46Z"} device-1 | {"level":"info","message":"POST /devices/f490dd30-c0f4-4c28-af56-e135d3248df8/signaling 200 11ms","method":"POST","requestID":"1ef4fff0-442b-11ef-8685-a1e9f27e6f28","responseTime":11,"status":200,"url":"/devices/f490dd30-c0f4-4c28-af56-e135d3248df8/signaling"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":747,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.893998,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:46Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c6281fb5-f7a4-47cb-8f6d-caf171eb7671"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"981d37daadd25873eaf1b75872cf2df3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c6281fb5-f7a4-47cb-8f6d-caf171eb7671"},"level":"info","message":"Building connection plan","requestID":"981d37daadd25873eaf1b75872cf2df3"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"1f6a09e4-0cc6-4a7d-b772-247031568830"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"173da173-311b-4a56-b778-10a4276c5176"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"7ef8a0b8-f61d-45e7-9e21-740978cedf9a"}]},"level":"info","message":"Built pairwise service configurations","requestID":"981d37daadd25873eaf1b75872cf2df3"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/631b863d-f9fd-4ec3-9e4b-b8de10239ac7","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"7cba3e7d91e37852ef4dbfbe802d0c0d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/631b863d-f9fd-4ec3-9e4b-b8de10239ac7","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213746,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0Nn0.SHtdhyy7-KL-KEBzd5jBufncot5nwVW4Rm2kHrdrafo"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/631b863d-f9fd-4ec3-9e4b-b8de10239ac7"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/f490dd30-c0f4-4c28-af56-e135d3248df8"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"981d37daadd25873eaf1b75872cf2df3"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7cba3e7d91e37852ef4dbfbe802d0c0d","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"1ef749e0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F631b863d-f9fd-4ec3-9e4b-b8de10239ac7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F631b863d-f9fd-4ec3-9e4b-b8de10239ac7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:45.734297030Z"}]},"request_id":"2377bdc3-2275-43e0-af62-aa7991e63f57","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213746.560155} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7cba3e7d91e37852ef4dbfbe802d0c0d","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":748,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:46Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":748,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.859533,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:46Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1ef749e0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213746,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0Nn0.SHtdhyy7-KL-KEBzd5jBufncot5nwVW4Rm2kHrdrafo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1ef749e0-442b-11ef-8685-a1e9f27e6f28","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7cba3e7d91e37852ef4dbfbe802d0c0d"} gateway-1 | {"time_local":"17/Jul/2024:10:55:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/631b863d-f9fd-4ec3-9e4b-b8de10239ac7? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7cba3e7d91e37852ef4dbfbe802d0c0d"} device-1 | {"level":"info","message":"GET /devices/631b863d-f9fd-4ec3-9e4b-b8de10239ac7? 200 15ms","method":"GET","requestID":"7cba3e7d91e37852ef4dbfbe802d0c0d","responseTime":15,"status":200,"url":"/devices/631b863d-f9fd-4ec3-9e4b-b8de10239ac7?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0Nn0.SHtdhyy7-KL-KEBzd5jBufncot5nwVW4Rm2kHrdrafo","level":"info","message":"auth send jwt","requestID":"906d5b8156616f3918c4a03405a21ab4"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"906d5b8156616f3918c4a03405a21ab4","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"906d5b8156616f3918c4a03405a21ab4"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"25c26144-aacf-48f6-b736-1ed1ee9e0761","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213746.5722234} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fa408904-a26f-4a05-90f0-219de430df16","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213746.5724733} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"1ef749e0-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":749,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:46Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":749,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.908386,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f490dd30-c0f4-4c28-af56-e135d3248df8","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"906d5b8156616f3918c4a03405a21ab4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/f490dd30-c0f4-4c28-af56-e135d3248df8","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213746,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0Nn0.SHtdhyy7-KL-KEBzd5jBufncot5nwVW4Rm2kHrdrafo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"906d5b8156616f3918c4a03405a21ab4","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff490dd30-c0f4-4c28-af56-e135d3248df8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff490dd30-c0f4-4c28-af56-e135d3248df8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:45.790106675Z"}]},"request_id":"f70aa7da-7cbf-419a-b146-9e99d38888f0","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213746.581323} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"906d5b8156616f3918c4a03405a21ab4","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"1ef749e0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"1ef749e0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/891f7ac0-b8c7-4629-aac0-c89365ab94f2'","requestID":"1ef749e0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/891f7ac0-b8c7-4629-aac0-c89365ab94f2'","requestID":"1ef749e0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"1ef749e0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 33ms","method":"POST","requestID":"1ef749e0-442b-11ef-8685-a1e9f27e6f28","responseTime":33,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"906d5b8156616f3918c4a03405a21ab4"} device-1 | {"level":"info","message":"GET /devices/f490dd30-c0f4-4c28-af56-e135d3248df8? 200 20ms","method":"GET","requestID":"906d5b8156616f3918c4a03405a21ab4","responseTime":20,"status":200,"url":"/devices/f490dd30-c0f4-4c28-af56-e135d3248df8?"} gateway-1 | {"time_local":"17/Jul/2024:10:55:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f490dd30-c0f4-4c28-af56-e135d3248df8? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"906d5b8156616f3918c4a03405a21ab4"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"1ef749e0-442b-11ef-8685-a1e9f27e6f28"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c6281fb5-f7a4-47cb-8f6d-caf171eb7671"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"981d37daadd25873eaf1b75872cf2df3"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1f00e6d0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":750,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:46Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F631b863d-f9fd-4ec3-9e4b-b8de10239ac7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c6381eac-9f7b-4c52-b085-de594c5e55a4","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213746.6267667} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":750,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.116106,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/631b863d-f9fd-4ec3-9e4b-b8de10239ac7","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1f00e6d0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/631b863d-f9fd-4ec3-9e4b-b8de10239ac7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"1f00e6d0-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1f00e6d0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/631b863d-f9fd-4ec3-9e4b-b8de10239ac7/signaling 200 11ms","method":"POST","requestID":"1f00e6d0-442b-11ef-8685-a1e9f27e6f28","responseTime":11,"status":200,"url":"/devices/631b863d-f9fd-4ec3-9e4b-b8de10239ac7/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1f02e2a0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":751,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:46Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff490dd30-c0f4-4c28-af56-e135d3248df8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d48fd932-9ff7-43ed-9f75-6504e7a7d8dd","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213746.640094} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":751,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.925636,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f490dd30-c0f4-4c28-af56-e135d3248df8","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"1f02e2a0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f490dd30-c0f4-4c28-af56-e135d3248df8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"1f02e2a0-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1f02e2a0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/f490dd30-c0f4-4c28-af56-e135d3248df8/signaling 200 11ms","method":"POST","requestID":"1f02e2a0-442b-11ef-8685-a1e9f27e6f28","responseTime":11,"status":200,"url":"/devices/f490dd30-c0f4-4c28-af56-e135d3248df8/signaling"} device-1 | {"device":"f490dd30-c0f4-4c28-af56-e135d3248df8","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"891f7ac0-b8c7-4629-aac0-c89365ab94f2","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"631b863d-f9fd-4ec3-9e4b-b8de10239ac7","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"891f7ac0-b8c7-4629-aac0-c89365ab94f2","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"631b863d-f9fd-4ec3-9e4b-b8de10239ac7","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"631b863d-f9fd-4ec3-9e4b-b8de10239ac7","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"631b863d-f9fd-4ec3-9e4b-b8de10239ac7","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"631b863d-f9fd-4ec3-9e4b-b8de10239ac7","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/891f7ac0-b8c7-4629-aac0-c89365ab94f2' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"891f7ac0-b8c7-4629-aac0-c89365ab94f2","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"df95bf558f207c8c592f8f4bb7dc13ad","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"df95bf558f207c8c592f8f4bb7dc13ad","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/631b863d-f9fd-4ec3-9e4b-b8de10239ac7"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/f490dd30-c0f4-4c28-af56-e135d3248df8"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/891f7ac0-b8c7-4629-aac0-c89365ab94f2"}}},"level":"info","message":"received a callback","requestID":"df95bf558f207c8c592f8f4bb7dc13ad"} device-1 | {"device":"f490dd30-c0f4-4c28-af56-e135d3248df8","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"f490dd30-c0f4-4c28-af56-e135d3248df8","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 8ms","method":"POST","requestID":"df95bf558f207c8c592f8f4bb7dc13ad","responseTime":8,"status":200,"url":"/callbacks/experiment"} device-1 | {"device":"f490dd30-c0f4-4c28-af56-e135d3248df8","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} gateway-1 | {"time_local":"17/Jul/2024:10:55:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.012","http_referrer":"","http_user_agent":"node-fetch","requestID":"df95bf558f207c8c592f8f4bb7dc13ad"} device-1 | {"data":{"peerconnection":"891f7ac0-b8c7-4629-aac0-c89365ab94f2","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"631b863d-f9fd-4ec3-9e4b-b8de10239ac7","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"f490dd30-c0f4-4c28-af56-e135d3248df8","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"631b863d-f9fd-4ec3-9e4b-b8de10239ac7","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"f490dd30-c0f4-4c28-af56-e135d3248df8","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"891f7ac0-b8c7-4629-aac0-c89365ab94f2","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/891f7ac0-b8c7-4629-aac0-c89365ab94f2' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"891f7ac0-b8c7-4629-aac0-c89365ab94f2","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"db70d0e1efc8a5bf8b9f9c4265202a0c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"db70d0e1efc8a5bf8b9f9c4265202a0c","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/631b863d-f9fd-4ec3-9e4b-b8de10239ac7"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/f490dd30-c0f4-4c28-af56-e135d3248df8"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/891f7ac0-b8c7-4629-aac0-c89365ab94f2"}}},"level":"info","message":"received a callback","requestID":"db70d0e1efc8a5bf8b9f9c4265202a0c"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"20406bb0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":752,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:48Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F891f7ac0-b8c7-4629-aac0-c89365ab94f2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4770b6d2-2632-4cc1-b89a-bf804e792150","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213748.721567} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":752,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.102456,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:48Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/891f7ac0-b8c7-4629-aac0-c89365ab94f2","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"20406bb0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/891f7ac0-b8c7-4629-aac0-c89365ab94f2","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"20406bb0-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"20406bb0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /peerconnections/891f7ac0-b8c7-4629-aac0-c89365ab94f2 200 11ms","method":"GET","requestID":"20406bb0-442b-11ef-8685-a1e9f27e6f28","responseTime":11,"status":200,"url":"/peerconnections/891f7ac0-b8c7-4629-aac0-c89365ab94f2"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 32ms","method":"POST","requestID":"db70d0e1efc8a5bf8b9f9c4265202a0c","responseTime":32,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:55:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.035","http_referrer":"","http_user_agent":"node-fetch","requestID":"db70d0e1efc8a5bf8b9f9c4265202a0c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2044d880-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":753,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:48Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F631b863d-f9fd-4ec3-9e4b-b8de10239ac7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b7490662-c44a-4888-bc22-9b160ebc6c3c","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213748.7502005} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":753,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.090038,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:48Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/631b863d-f9fd-4ec3-9e4b-b8de10239ac7","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"2044d880-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/631b863d-f9fd-4ec3-9e4b-b8de10239ac7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"2044d880-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2044d880-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/631b863d-f9fd-4ec3-9e4b-b8de10239ac7/signaling 200 11ms","method":"POST","requestID":"2044d880-442b-11ef-8685-a1e9f27e6f28","responseTime":11,"status":200,"url":"/devices/631b863d-f9fd-4ec3-9e4b-b8de10239ac7/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2046d450-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":754,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:48Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff490dd30-c0f4-4c28-af56-e135d3248df8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"df8750d7-0444-4d36-b065-9156a6a25502","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213748.7633371} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":754,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.034231,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:48Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f490dd30-c0f4-4c28-af56-e135d3248df8","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"2046d450-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f490dd30-c0f4-4c28-af56-e135d3248df8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"2046d450-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2046d450-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/f490dd30-c0f4-4c28-af56-e135d3248df8/signaling 200 11ms","method":"POST","requestID":"2046d450-442b-11ef-8685-a1e9f27e6f28","responseTime":11,"status":200,"url":"/devices/f490dd30-c0f4-4c28-af56-e135d3248df8/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0OH0.5rY03L6Mdu5uPomJU5EbRR_nyPznt9Ycq5WWKyDdTqU","level":"info","message":"auth send jwt","requestID":"75211dfc947969f7fbe0c0de3255463e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"75211dfc947969f7fbe0c0de3255463e","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/c6281fb5-f7a4-47cb-8f6d-caf171eb7671","requestID":"75211dfc947969f7fbe0c0de3255463e"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":755,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:48Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":755,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.229013,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:48Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/c6281fb5-f7a4-47cb-8f6d-caf171eb7671","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"75211dfc947969f7fbe0c0de3255463e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:http://localhost/experiments/c6281fb5-f7a4-47cb-8f6d-caf171eb7671","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213748,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0OH0.5rY03L6Mdu5uPomJU5EbRR_nyPznt9Ycq5WWKyDdTqU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"75211dfc947969f7fbe0c0de3255463e","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/c6281fb5-f7a4-47cb-8f6d-caf171eb7671","requestID":"75211dfc947969f7fbe0c0de3255463e"} experiment-1 | {"level":"info","message":"GET /experiments/c6281fb5-f7a4-47cb-8f6d-caf171eb7671 200 15ms","method":"GET","requestID":"75211dfc947969f7fbe0c0de3255463e","responseTime":15,"status":200,"url":"/experiments/c6281fb5-f7a4-47cb-8f6d-caf171eb7671"} gateway-1 | {"time_local":"17/Jul/2024:10:55:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/c6281fb5-f7a4-47cb-8f6d-caf171eb7671 HTTP/1.1","status": "200","body_bytes_sent":"1292","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"75211dfc947969f7fbe0c0de3255463e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0OH0.5rY03L6Mdu5uPomJU5EbRR_nyPznt9Ycq5WWKyDdTqU","level":"info","message":"auth send jwt","requestID":"d98699853e566722e4e8e401113b8009"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"d98699853e566722e4e8e401113b8009","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/c6281fb5-f7a4-47cb-8f6d-caf171eb7671","requestID":"d98699853e566722e4e8e401113b8009"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":756,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:48Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":756,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.206773,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:48Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/c6281fb5-f7a4-47cb-8f6d-caf171eb7671","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"d98699853e566722e4e8e401113b8009","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:http://localhost/experiments/c6281fb5-f7a4-47cb-8f6d-caf171eb7671","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213748,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0OH0.5rY03L6Mdu5uPomJU5EbRR_nyPznt9Ycq5WWKyDdTqU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d98699853e566722e4e8e401113b8009","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c6281fb5-f7a4-47cb-8f6d-caf171eb7671"},"level":"info","message":"Attempting to finish experiment","requestID":"d98699853e566722e4e8e401113b8009"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"20548ff0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":757,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:48Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":757,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.276645,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:48Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/891f7ac0-b8c7-4629-aac0-c89365ab94f2","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"20548ff0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"peerconnection:http://localhost/peerconnections/891f7ac0-b8c7-4629-aac0-c89365ab94f2","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213748,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0OH0.5rY03L6Mdu5uPomJU5EbRR_nyPznt9Ycq5WWKyDdTqU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"20548ff0-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"device":"631b863d-f9fd-4ec3-9e4b-b8de10239ac7","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"631b863d-f9fd-4ec3-9e4b-b8de10239ac7","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"631b863d-f9fd-4ec3-9e4b-b8de10239ac7","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"f490dd30-c0f4-4c28-af56-e135d3248df8","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"f490dd30-c0f4-4c28-af56-e135d3248df8","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"f490dd30-c0f4-4c28-af56-e135d3248df8","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/891f7ac0-b8c7-4629-aac0-c89365ab94f2' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/891f7ac0-b8c7-4629-aac0-c89365ab94f2' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"891f7ac0-b8c7-4629-aac0-c89365ab94f2","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7ee9c29bbc90c817667bbd78fe69da68","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"7ee9c29bbc90c817667bbd78fe69da68","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1b08a9bce9753cabe802fad12c50da15","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F891f7ac0-b8c7-4629-aac0-c89365ab94f2': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F891f7ac0-b8c7-4629-aac0-c89365ab94f2","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]},"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":null},"raw_response":{},"request_id":"bee5230b-059d-495e-af60-585145202ccb","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213748.8782866} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/631b863d-f9fd-4ec3-9e4b-b8de10239ac7"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/f490dd30-c0f4-4c28-af56-e135d3248df8"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/891f7ac0-b8c7-4629-aac0-c89365ab94f2"}}},"level":"info","message":"received a callback","requestID":"7ee9c29bbc90c817667bbd78fe69da68"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"1b08a9bce9753cabe802fad12c50da15","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"019226f1-3599-473d-b4c6-f92944fbf961","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213748.8789506} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/631b863d-f9fd-4ec3-9e4b-b8de10239ac7"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/f490dd30-c0f4-4c28-af56-e135d3248df8"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/891f7ac0-b8c7-4629-aac0-c89365ab94f2"}}},"level":"info","message":"received a callback","requestID":"1b08a9bce9753cabe802fad12c50da15"} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"20548ff0-442b-11ef-8685-a1e9f27e6f28","responseTime":18,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"891f7ac0-b8c7-4629-aac0-c89365ab94f2","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"20548ff0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"DELETE /peerconnections/891f7ac0-b8c7-4629-aac0-c89365ab94f2 204 52ms","method":"DELETE","requestID":"20548ff0-442b-11ef-8685-a1e9f27e6f28","responseTime":52,"status":204,"url":"/peerconnections/891f7ac0-b8c7-4629-aac0-c89365ab94f2"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c6281fb5-f7a4-47cb-8f6d-caf171eb7671"},"level":"info","message":"Successfully finished experiment","requestID":"d98699853e566722e4e8e401113b8009"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"20604fc0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":758,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:48Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F631b863d-f9fd-4ec3-9e4b-b8de10239ac7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"34a9ae7e-4146-4466-8316-a041a1b3d2da","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213748.9310637} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":758,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.482228,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:48Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/631b863d-f9fd-4ec3-9e4b-b8de10239ac7","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"20604fc0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/631b863d-f9fd-4ec3-9e4b-b8de10239ac7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"20604fc0-442b-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"20604fc0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/631b863d-f9fd-4ec3-9e4b-b8de10239ac7/signaling 200 14ms","method":"POST","requestID":"20604fc0-442b-11ef-8685-a1e9f27e6f28","responseTime":14,"status":200,"url":"/devices/631b863d-f9fd-4ec3-9e4b-b8de10239ac7/signaling"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc6281fb5-f7a4-47cb-8f6d-caf171eb7671': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc6281fb5-f7a4-47cb-8f6d-caf171eb7671","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]},"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":null},"raw_response":{},"request_id":"c78b7efb-eb04-4587-b39a-fc259645c61b","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213748.939403} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"87d891e4-4732-4638-9045-c47dfd6255de","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213748.9400795} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2062e7d0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"d98699853e566722e4e8e401113b8009","responseTime":21,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":759,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:48Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff490dd30-c0f4-4c28-af56-e135d3248df8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f939b315-2329-4fb7-a50b-38dad39850c7","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213748.9484057} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":759,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.322818,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:48Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f490dd30-c0f4-4c28-af56-e135d3248df8","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"2062e7d0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f490dd30-c0f4-4c28-af56-e135d3248df8","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"2062e7d0-442b-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2062e7d0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/f490dd30-c0f4-4c28-af56-e135d3248df8/signaling 200 14ms","method":"POST","requestID":"2062e7d0-442b-11ef-8685-a1e9f27e6f28","responseTime":14,"status":200,"url":"/devices/f490dd30-c0f4-4c28-af56-e135d3248df8/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/c6281fb5-f7a4-47cb-8f6d-caf171eb7671","requestID":"d98699853e566722e4e8e401113b8009"} gateway-1 | {"time_local":"17/Jul/2024:10:55:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/c6281fb5-f7a4-47cb-8f6d-caf171eb7671 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.176","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d98699853e566722e4e8e401113b8009"} experiment-1 | {"level":"info","message":"DELETE /experiments/c6281fb5-f7a4-47cb-8f6d-caf171eb7671 204 172ms","method":"DELETE","requestID":"d98699853e566722e4e8e401113b8009","responseTime":172,"status":204,"url":"/experiments/c6281fb5-f7a4-47cb-8f6d-caf171eb7671"} gateway-1 | {"time_local":"17/Jul/2024:10:55:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2709","request_time":"2.671","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"9ed57a9be984982365aebe02cfe37024"} gateway-1 | {"time_local":"17/Jul/2024:10:55:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2707","request_time":"2.681","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"9ef6924509253a711bc2c1e9a9efc536"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 127ms","method":"POST","requestID":"7ee9c29bbc90c817667bbd78fe69da68","responseTime":127,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:55:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.132","http_referrer":"","http_user_agent":"node-fetch","requestID":"7ee9c29bbc90c817667bbd78fe69da68"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 126ms","method":"POST","requestID":"1b08a9bce9753cabe802fad12c50da15","responseTime":126,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:55:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.132","http_referrer":"","http_user_agent":"node-fetch","requestID":"1b08a9bce9753cabe802fad12c50da15"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0OX0.UnIsHFHMnIUnp8j224mSX_tIbtn9VDD-bBba9wDvh_k","level":"info","message":"auth send jwt","requestID":"adafa7254b63cc3202aaaa1d997c9213"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"adafa7254b63cc3202aaaa1d997c9213","responseTime":3,"status":200,"url":"/auth"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/f490dd30-c0f4-4c28-af56-e135d3248df8' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"adafa7254b63cc3202aaaa1d997c9213"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":760,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:49Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":760,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.846637,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:49Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"adafa7254b63cc3202aaaa1d997c9213","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213749,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0OX0.UnIsHFHMnIUnp8j224mSX_tIbtn9VDD-bBba9wDvh_k"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"adafa7254b63cc3202aaaa1d997c9213","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/631b863d-f9fd-4ec3-9e4b-b8de10239ac7' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70b6abe6-b1db-4aea-9540-5dbeb3a66cd0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"ea8fbebd-19dd-4856-bbdf-c8c59141798a","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213749.0372038} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"adafa7254b63cc3202aaaa1d997c9213","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"151fe98e-f0a6-4089-88b7-dbffa73965ca","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213749.043725} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"adafa7254b63cc3202aaaa1d997c9213","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70b6abe6-b1db-4aea-9540-5dbeb3a66cd0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"b3d91c23-bb24-4020-9e61-1e94754b2dc7","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213749.0551999} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a1c4b322-f4d7-427e-99c9-2a12f7ff37ae","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213749.0553267} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"adafa7254b63cc3202aaaa1d997c9213","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70b6abe6-b1db-4aea-9540-5dbeb3a66cd0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70b6abe6-b1db-4aea-9540-5dbeb3a66cd0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:49.055167548Z"}]},"request_id":"5b6f262f-7d80-4262-b402-a2c4e58df844","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213749.0597432} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"adafa7254b63cc3202aaaa1d997c9213","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"adafa7254b63cc3202aaaa1d997c9213"} gateway-1 | {"time_local":"17/Jul/2024:10:55:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.059","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"adafa7254b63cc3202aaaa1d997c9213"} device-1 | {"level":"info","message":"POST /devices? 201 51ms","method":"POST","requestID":"adafa7254b63cc3202aaaa1d997c9213","responseTime":51,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0OX0.UnIsHFHMnIUnp8j224mSX_tIbtn9VDD-bBba9wDvh_k","level":"info","message":"auth send jwt","requestID":"cb0099fa4c4e83088e67ff4d72c2984a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"cb0099fa4c4e83088e67ff4d72c2984a","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"cb0099fa4c4e83088e67ff4d72c2984a"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":761,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:49Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":761,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.027981,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:49Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"cb0099fa4c4e83088e67ff4d72c2984a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213749,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0OX0.UnIsHFHMnIUnp8j224mSX_tIbtn9VDD-bBba9wDvh_k"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"cb0099fa4c4e83088e67ff4d72c2984a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42aa0cb6-67fc-4612-9105-6110e1fbd868","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"2c99014e-cee4-4222-8a71-ec29bdc6abbd","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213749.0863247} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"cb0099fa4c4e83088e67ff4d72c2984a","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9a0493f7-d4f6-4a5e-adc0-b68fa942db37","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213749.091673} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"cb0099fa4c4e83088e67ff4d72c2984a","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42aa0cb6-67fc-4612-9105-6110e1fbd868","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"2c075cc4-ea15-4018-9527-a95c22a95614","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213749.1071813} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fce5061e-5157-4f7c-b955-6dc41d2e8c1f","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213749.1074333} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"cb0099fa4c4e83088e67ff4d72c2984a","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42aa0cb6-67fc-4612-9105-6110e1fbd868","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42aa0cb6-67fc-4612-9105-6110e1fbd868","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:49.107149586Z"}]},"request_id":"92230a6f-ff77-42e0-981e-ca35302559d0","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213749.111891} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"cb0099fa4c4e83088e67ff4d72c2984a","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"cb0099fa4c4e83088e67ff4d72c2984a"} gateway-1 | {"time_local":"17/Jul/2024:10:55:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"316","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"cb0099fa4c4e83088e67ff4d72c2984a"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"cb0099fa4c4e83088e67ff4d72c2984a","responseTime":46,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0OX0.UnIsHFHMnIUnp8j224mSX_tIbtn9VDD-bBba9wDvh_k","level":"info","message":"auth send jwt","requestID":"13e038b402ca1c654e0bf2b4a8fd7d21"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"13e038b402ca1c654e0bf2b4a8fd7d21","responseTime":5,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0OX0.UnIsHFHMnIUnp8j224mSX_tIbtn9VDD-bBba9wDvh_k","level":"info","message":"auth send jwt","requestID":"0ee03353a71e5a81d317aa564e971889"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0ee03353a71e5a81d317aa564e971889","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"13e038b402ca1c654e0bf2b4a8fd7d21"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"0ee03353a71e5a81d317aa564e971889"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":762,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:49Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":762,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.151547,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:49Z"} authorization-1 | {"client_addr":"127.0.0.1:35236","level":"info","msg":"Received request.","req_id":763,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:49Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/42aa0cb6-67fc-4612-9105-6110e1fbd868","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"13e038b402ca1c654e0bf2b4a8fd7d21","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/42aa0cb6-67fc-4612-9105-6110e1fbd868","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213749,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0OX0.UnIsHFHMnIUnp8j224mSX_tIbtn9VDD-bBba9wDvh_k"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"13e038b402ca1c654e0bf2b4a8fd7d21","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:35236","level":"info","msg":"Sent response.","req_id":763,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.666294,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:49Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/70b6abe6-b1db-4aea-9540-5dbeb3a66cd0","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0ee03353a71e5a81d317aa564e971889","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/70b6abe6-b1db-4aea-9540-5dbeb3a66cd0","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213749,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0OX0.UnIsHFHMnIUnp8j224mSX_tIbtn9VDD-bBba9wDvh_k"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0ee03353a71e5a81d317aa564e971889","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42aa0cb6-67fc-4612-9105-6110e1fbd868","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42aa0cb6-67fc-4612-9105-6110e1fbd868","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:49.107149586Z"}]},"request_id":"a5a96db4-4462-48eb-b25b-52c28add7ece","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213749.596724} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"13e038b402ca1c654e0bf2b4a8fd7d21","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70b6abe6-b1db-4aea-9540-5dbeb3a66cd0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70b6abe6-b1db-4aea-9540-5dbeb3a66cd0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:49.055167548Z"}]},"request_id":"aaba32b2-89a0-40c4-8226-223ba8815494","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213749.5974524} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"0ee03353a71e5a81d317aa564e971889","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ba84be59-1b78-4f18-9ca6-6cb796a18385","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213749.601686} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"13e038b402ca1c654e0bf2b4a8fd7d21","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"01ca338e-50cb-45b6-b0cf-a5ac03164eee","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213749.6041172} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"0ee03353a71e5a81d317aa564e971889","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70b6abe6-b1db-4aea-9540-5dbeb3a66cd0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70b6abe6-b1db-4aea-9540-5dbeb3a66cd0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:49.055167548Z"}]},"request_id":"9d6ca97f-1eb7-4e88-863e-cf9be28ef6c5","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213749.6078043} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0ee03353a71e5a81d317aa564e971889","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"0ee03353a71e5a81d317aa564e971889"} gateway-1 | {"time_local":"17/Jul/2024:10:55:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/70b6abe6-b1db-4aea-9540-5dbeb3a66cd0 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.032","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"0ee03353a71e5a81d317aa564e971889"} device-1 | {"level":"info","message":"PATCH /devices/70b6abe6-b1db-4aea-9540-5dbeb3a66cd0 200 23ms","method":"PATCH","requestID":"0ee03353a71e5a81d317aa564e971889","responseTime":23,"status":200,"url":"/devices/70b6abe6-b1db-4aea-9540-5dbeb3a66cd0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0OX0.UnIsHFHMnIUnp8j224mSX_tIbtn9VDD-bBba9wDvh_k","level":"info","message":"auth send jwt","requestID":"43f456343537f32f83761c4b108cf79c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"43f456343537f32f83761c4b108cf79c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"43f456343537f32f83761c4b108cf79c"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42aa0cb6-67fc-4612-9105-6110e1fbd868","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42aa0cb6-67fc-4612-9105-6110e1fbd868","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:49.107149586Z"}]},"request_id":"48e6bc49-d77a-4ec1-a9b4-da015401059c","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213749.6186852} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"13e038b402ca1c654e0bf2b4a8fd7d21","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":764,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:49Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":764,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.819953,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:49Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/70b6abe6-b1db-4aea-9540-5dbeb3a66cd0","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"43f456343537f32f83761c4b108cf79c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/70b6abe6-b1db-4aea-9540-5dbeb3a66cd0","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213749,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0OX0.UnIsHFHMnIUnp8j224mSX_tIbtn9VDD-bBba9wDvh_k"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"13e038b402ca1c654e0bf2b4a8fd7d21"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"43f456343537f32f83761c4b108cf79c","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"17/Jul/2024:10:55:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/42aa0cb6-67fc-4612-9105-6110e1fbd868 HTTP/1.1","status": "200","body_bytes_sent":"1087","request_time":"0.044","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"13e038b402ca1c654e0bf2b4a8fd7d21"} device-1 | {"level":"info","message":"PATCH /devices/42aa0cb6-67fc-4612-9105-6110e1fbd868 200 37ms","method":"PATCH","requestID":"13e038b402ca1c654e0bf2b4a8fd7d21","responseTime":37,"status":200,"url":"/devices/42aa0cb6-67fc-4612-9105-6110e1fbd868"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0OX0.UnIsHFHMnIUnp8j224mSX_tIbtn9VDD-bBba9wDvh_k","level":"info","message":"auth send jwt","requestID":"05c0f4d509dd3cf77aee3c1a493fc001"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"05c0f4d509dd3cf77aee3c1a493fc001","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"05c0f4d509dd3cf77aee3c1a493fc001"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":765,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:49Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":765,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.688215,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:49Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/42aa0cb6-67fc-4612-9105-6110e1fbd868","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"05c0f4d509dd3cf77aee3c1a493fc001","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/42aa0cb6-67fc-4612-9105-6110e1fbd868","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213749,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0OX0.UnIsHFHMnIUnp8j224mSX_tIbtn9VDD-bBba9wDvh_k"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"05c0f4d509dd3cf77aee3c1a493fc001","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"43f456343537f32f83761c4b108cf79c"} device-1 | {"level":"info","message":"POST /devices/70b6abe6-b1db-4aea-9540-5dbeb3a66cd0/websocket 200 19ms","method":"POST","requestID":"43f456343537f32f83761c4b108cf79c","responseTime":19,"status":200,"url":"/devices/70b6abe6-b1db-4aea-9540-5dbeb3a66cd0/websocket"} gateway-1 | {"time_local":"17/Jul/2024:10:55:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/70b6abe6-b1db-4aea-9540-5dbeb3a66cd0/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.023","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"43f456343537f32f83761c4b108cf79c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"05c0f4d509dd3cf77aee3c1a493fc001"} gateway-1 | {"time_local":"17/Jul/2024:10:55:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/42aa0cb6-67fc-4612-9105-6110e1fbd868/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.020","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"05c0f4d509dd3cf77aee3c1a493fc001"} device-1 | {"level":"info","message":"POST /devices/42aa0cb6-67fc-4612-9105-6110e1fbd868/websocket 200 16ms","method":"POST","requestID":"05c0f4d509dd3cf77aee3c1a493fc001","responseTime":16,"status":200,"url":"/devices/42aa0cb6-67fc-4612-9105-6110e1fbd868/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/70b6abe6-b1db-4aea-9540-5dbeb3a66cd0' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/42aa0cb6-67fc-4612-9105-6110e1fbd868' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0OX0.UnIsHFHMnIUnp8j224mSX_tIbtn9VDD-bBba9wDvh_k","level":"info","message":"auth send jwt","requestID":"220eb9d6047efbe03b67e39ecd4d6f7e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"220eb9d6047efbe03b67e39ecd4d6f7e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"220eb9d6047efbe03b67e39ecd4d6f7e"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":766,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:49Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":766,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.900788,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/70b6abe6-b1db-4aea-9540-5dbeb3a66cd0","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"220eb9d6047efbe03b67e39ecd4d6f7e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/70b6abe6-b1db-4aea-9540-5dbeb3a66cd0","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213749,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0OX0.UnIsHFHMnIUnp8j224mSX_tIbtn9VDD-bBba9wDvh_k"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"220eb9d6047efbe03b67e39ecd4d6f7e","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70b6abe6-b1db-4aea-9540-5dbeb3a66cd0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70b6abe6-b1db-4aea-9540-5dbeb3a66cd0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:49.055167548Z"}]},"request_id":"907b2d06-39d0-443f-80c1-484cdcc59530","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213749.6798294} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"220eb9d6047efbe03b67e39ecd4d6f7e","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"220eb9d6047efbe03b67e39ecd4d6f7e"} gateway-1 | {"time_local":"17/Jul/2024:10:55:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/70b6abe6-b1db-4aea-9540-5dbeb3a66cd0? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"220eb9d6047efbe03b67e39ecd4d6f7e"} device-1 | {"level":"info","message":"GET /devices/70b6abe6-b1db-4aea-9540-5dbeb3a66cd0? 200 12ms","method":"GET","requestID":"220eb9d6047efbe03b67e39ecd4d6f7e","responseTime":12,"status":200,"url":"/devices/70b6abe6-b1db-4aea-9540-5dbeb3a66cd0?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0OX0.UnIsHFHMnIUnp8j224mSX_tIbtn9VDD-bBba9wDvh_k","level":"info","message":"auth send jwt","requestID":"8c9e55dee00d728cb7aa1cd3f9eb2716"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"8c9e55dee00d728cb7aa1cd3f9eb2716","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8c9e55dee00d728cb7aa1cd3f9eb2716"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":767,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:49Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":767,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.682537,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/42aa0cb6-67fc-4612-9105-6110e1fbd868","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"8c9e55dee00d728cb7aa1cd3f9eb2716","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/42aa0cb6-67fc-4612-9105-6110e1fbd868","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213749,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0OX0.UnIsHFHMnIUnp8j224mSX_tIbtn9VDD-bBba9wDvh_k"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8c9e55dee00d728cb7aa1cd3f9eb2716","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42aa0cb6-67fc-4612-9105-6110e1fbd868","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42aa0cb6-67fc-4612-9105-6110e1fbd868","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:49.107149586Z"}]},"request_id":"c2195ef2-d003-49af-a43b-315aa97c101a","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213749.6963565} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8c9e55dee00d728cb7aa1cd3f9eb2716","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8c9e55dee00d728cb7aa1cd3f9eb2716"} gateway-1 | {"time_local":"17/Jul/2024:10:55:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/42aa0cb6-67fc-4612-9105-6110e1fbd868? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8c9e55dee00d728cb7aa1cd3f9eb2716"} device-1 | {"level":"info","message":"GET /devices/42aa0cb6-67fc-4612-9105-6110e1fbd868? 200 12ms","method":"GET","requestID":"8c9e55dee00d728cb7aa1cd3f9eb2716","responseTime":12,"status":200,"url":"/devices/42aa0cb6-67fc-4612-9105-6110e1fbd868?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0OX0.UnIsHFHMnIUnp8j224mSX_tIbtn9VDD-bBba9wDvh_k","level":"info","message":"auth send jwt","requestID":"4d51db2d455ab75930eb794cd820a8f7"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4d51db2d455ab75930eb794cd820a8f7","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"4d51db2d455ab75930eb794cd820a8f7"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":768,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:49Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":768,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.960904,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:49Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"4d51db2d455ab75930eb794cd820a8f7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213749,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0OX0.UnIsHFHMnIUnp8j224mSX_tIbtn9VDD-bBba9wDvh_k"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4d51db2d455ab75930eb794cd820a8f7","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/03082753-08b8-4ba5-8a80-60dd4fcee8b3"},"level":"info","message":"Attempting to run experiment","requestID":"4d51db2d455ab75930eb794cd820a8f7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/03082753-08b8-4ba5-8a80-60dd4fcee8b3"},"level":"info","message":"Attempting to book experiment","requestID":"4d51db2d455ab75930eb794cd820a8f7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/03082753-08b8-4ba5-8a80-60dd4fcee8b3"},"level":"info","message":"Successfully booked experiment","requestID":"4d51db2d455ab75930eb794cd820a8f7"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"20dde430-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"20de3250-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":769,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:49Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":769,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.822868,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:49Z"} authorization-1 | {"client_addr":"127.0.0.1:35236","level":"info","msg":"Received request.","req_id":770,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/70b6abe6-b1db-4aea-9540-5dbeb3a66cd0","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"20dde430-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/70b6abe6-b1db-4aea-9540-5dbeb3a66cd0","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213749,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0OX0.UnIsHFHMnIUnp8j224mSX_tIbtn9VDD-bBba9wDvh_k"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"20dde430-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:35236","level":"info","msg":"Sent response.","req_id":770,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.089933,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/42aa0cb6-67fc-4612-9105-6110e1fbd868","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"20de3250-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/42aa0cb6-67fc-4612-9105-6110e1fbd868","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213749,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0OX0.UnIsHFHMnIUnp8j224mSX_tIbtn9VDD-bBba9wDvh_k"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"20de3250-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70b6abe6-b1db-4aea-9540-5dbeb3a66cd0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70b6abe6-b1db-4aea-9540-5dbeb3a66cd0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:49.055167548Z"}]},"request_id":"e825a240-e881-44bd-8762-0c21a2a36adf","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213749.7600813} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"20dde430-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42aa0cb6-67fc-4612-9105-6110e1fbd868","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42aa0cb6-67fc-4612-9105-6110e1fbd868","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:49.107149586Z"}]},"request_id":"80011c4f-9ab1-4be9-8b83-fde322dd9a71","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213749.7622144} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"20de3250-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"20dde430-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/70b6abe6-b1db-4aea-9540-5dbeb3a66cd0? 200 22ms","method":"GET","requestID":"20dde430-442b-11ef-8685-a1e9f27e6f28","responseTime":22,"status":200,"url":"/devices/70b6abe6-b1db-4aea-9540-5dbeb3a66cd0?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"20de3250-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/42aa0cb6-67fc-4612-9105-6110e1fbd868? 200 22ms","method":"GET","requestID":"20de3250-442b-11ef-8685-a1e9f27e6f28","responseTime":22,"status":200,"url":"/devices/42aa0cb6-67fc-4612-9105-6110e1fbd868?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/03082753-08b8-4ba5-8a80-60dd4fcee8b3"},"level":"info","message":"Setting up experiment","requestID":"4d51db2d455ab75930eb794cd820a8f7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/03082753-08b8-4ba5-8a80-60dd4fcee8b3"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"4d51db2d455ab75930eb794cd820a8f7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/03082753-08b8-4ba5-8a80-60dd4fcee8b3"},"level":"info","message":"Successfully locked booking for experiment","requestID":"4d51db2d455ab75930eb794cd820a8f7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/03082753-08b8-4ba5-8a80-60dd4fcee8b3"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"4d51db2d455ab75930eb794cd820a8f7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/03082753-08b8-4ba5-8a80-60dd4fcee8b3"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"4d51db2d455ab75930eb794cd820a8f7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/03082753-08b8-4ba5-8a80-60dd4fcee8b3"},"level":"info","message":"Attempting to update booking for experiment","requestID":"4d51db2d455ab75930eb794cd820a8f7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/03082753-08b8-4ba5-8a80-60dd4fcee8b3"},"level":"info","message":"Successfully updated booking for experiment","requestID":"4d51db2d455ab75930eb794cd820a8f7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/03082753-08b8-4ba5-8a80-60dd4fcee8b3"},"level":"info","message":"Successfully set up experiment","requestID":"4d51db2d455ab75930eb794cd820a8f7"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"20e9a400-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"20e9f220-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"20ea6750-442b-11ef-8685-a1e9f27e6f28"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/03082753-08b8-4ba5-8a80-60dd4fcee8b3"},"level":"info","message":"Successfully running experiment","requestID":"4d51db2d455ab75930eb794cd820a8f7"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":771,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:49Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":771,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.458924,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:49Z"} authorization-1 | {"client_addr":"127.0.0.1:35236","level":"info","msg":"Received request.","req_id":772,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/70b6abe6-b1db-4aea-9540-5dbeb3a66cd0","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"20e9a400-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/70b6abe6-b1db-4aea-9540-5dbeb3a66cd0","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213749,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0OX0.UnIsHFHMnIUnp8j224mSX_tIbtn9VDD-bBba9wDvh_k"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"20e9a400-442b-11ef-8685-a1e9f27e6f28","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:35236","level":"info","msg":"Sent response.","req_id":772,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.452101,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:49Z"} authorization-1 | {"client_addr":"127.0.0.1:35240","level":"info","msg":"Received request.","req_id":773,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/42aa0cb6-67fc-4612-9105-6110e1fbd868","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"20e9f220-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/42aa0cb6-67fc-4612-9105-6110e1fbd868","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213749,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0OX0.UnIsHFHMnIUnp8j224mSX_tIbtn9VDD-bBba9wDvh_k"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"20e9f220-442b-11ef-8685-a1e9f27e6f28","responseTime":13,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:35240","level":"info","msg":"Sent response.","req_id":773,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":6.273836,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:49Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70b6abe6-b1db-4aea-9540-5dbeb3a66cd0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8812c2f2-0559-499d-9d6e-bc376b05c366","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213749.8412616} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/70b6abe6-b1db-4aea-9540-5dbeb3a66cd0","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"20ea6750-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/70b6abe6-b1db-4aea-9540-5dbeb3a66cd0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"20ea6750-442b-11ef-8685-a1e9f27e6f28","responseTime":13,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70b6abe6-b1db-4aea-9540-5dbeb3a66cd0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70b6abe6-b1db-4aea-9540-5dbeb3a66cd0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:49.055167548Z"}]},"request_id":"7ce7284a-ea4d-4bc2-b8b2-31a8f7020335","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213749.846866} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"20ea6750-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/70b6abe6-b1db-4aea-9540-5dbeb3a66cd0/signaling 200 23ms","method":"POST","requestID":"20ea6750-442b-11ef-8685-a1e9f27e6f28","responseTime":23,"status":200,"url":"/devices/70b6abe6-b1db-4aea-9540-5dbeb3a66cd0/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"20e9a400-442b-11ef-8685-a1e9f27e6f28","responseTime":9,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42aa0cb6-67fc-4612-9105-6110e1fbd868","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42aa0cb6-67fc-4612-9105-6110e1fbd868","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:49.107149586Z"}]},"request_id":"4437e39f-ca4b-4e33-94b2-f4a1aa998e10","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213749.8520024} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"20e9f220-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"20ee8600-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"20e9a400-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/70b6abe6-b1db-4aea-9540-5dbeb3a66cd0? 200 37ms","method":"GET","requestID":"20e9a400-442b-11ef-8685-a1e9f27e6f28","responseTime":37,"status":200,"url":"/devices/70b6abe6-b1db-4aea-9540-5dbeb3a66cd0?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"20e9f220-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/42aa0cb6-67fc-4612-9105-6110e1fbd868? 200 37ms","method":"GET","requestID":"20e9f220-442b-11ef-8685-a1e9f27e6f28","responseTime":37,"status":200,"url":"/devices/42aa0cb6-67fc-4612-9105-6110e1fbd868?"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":774,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:49Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F03082753-08b8-4ba5-8a80-60dd4fcee8b3#owner@http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F03082753-08b8-4ba5-8a80-60dd4fcee8b3","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"2c1a1b72-f3ab-467e-8caa-3398a8750b4a","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213749.8645635} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42aa0cb6-67fc-4612-9105-6110e1fbd868","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b8a2fdc7-a26e-4796-9e97-d68a15dc81d3","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213749.8648727} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"06da5374-c8d7-4e64-9797-669c2037d092","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213749.8650453} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"20f00ca0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"level":"info","message":"POST /relations/update 200 30ms","method":"POST","requestID":"4d51db2d455ab75930eb794cd820a8f7","responseTime":30,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":774,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.493835,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/42aa0cb6-67fc-4612-9105-6110e1fbd868","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"20ee8600-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/42aa0cb6-67fc-4612-9105-6110e1fbd868","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"20ee8600-442b-11ef-8685-a1e9f27e6f28","responseTime":12,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":775,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:49Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"20ee8600-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/42aa0cb6-67fc-4612-9105-6110e1fbd868/signaling 200 19ms","method":"POST","requestID":"20ee8600-442b-11ef-8685-a1e9f27e6f28","responseTime":19,"status":200,"url":"/devices/42aa0cb6-67fc-4612-9105-6110e1fbd868/signaling"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70b6abe6-b1db-4aea-9540-5dbeb3a66cd0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"379701df-6973-4706-bf99-53e343c21e74","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213749.8767614} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":775,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.478485,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:49Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/03082753-08b8-4ba5-8a80-60dd4fcee8b3","user":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"4d51db2d455ab75930eb794cd820a8f7"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/70b6abe6-b1db-4aea-9540-5dbeb3a66cd0","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"20f00ca0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/70b6abe6-b1db-4aea-9540-5dbeb3a66cd0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} experiment-1 | {"level":"info","message":"POST /experiments? 201 172ms","method":"POST","requestID":"4d51db2d455ab75930eb794cd820a8f7","responseTime":172,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"17/Jul/2024:10:55:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1219","request_time":"0.177","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4d51db2d455ab75930eb794cd820a8f7"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"20f00ca0-442b-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"20f00ca0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/70b6abe6-b1db-4aea-9540-5dbeb3a66cd0/signaling 200 16ms","method":"POST","requestID":"20f00ca0-442b-11ef-8685-a1e9f27e6f28","responseTime":16,"status":200,"url":"/devices/70b6abe6-b1db-4aea-9540-5dbeb3a66cd0/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0OX0.UnIsHFHMnIUnp8j224mSX_tIbtn9VDD-bBba9wDvh_k","level":"info","message":"auth send jwt","requestID":"4722e9b911dc426ce3b5473d939f7d0e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4722e9b911dc426ce3b5473d939f7d0e","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"20f2cbc0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4722e9b911dc426ce3b5473d939f7d0e"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":776,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:49Z"} authorization-1 | {"client_addr":"127.0.0.1:35236","level":"info","msg":"Received request.","req_id":777,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:49Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42aa0cb6-67fc-4612-9105-6110e1fbd868","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"80a60ebb-ba93-4e18-9911-10a20b00f974","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213749.890023} authorization-1 | {"client_addr":"127.0.0.1:35236","level":"info","msg":"Sent response.","req_id":777,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.972171,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/70b6abe6-b1db-4aea-9540-5dbeb3a66cd0","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"4722e9b911dc426ce3b5473d939f7d0e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/70b6abe6-b1db-4aea-9540-5dbeb3a66cd0","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213749,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0OX0.UnIsHFHMnIUnp8j224mSX_tIbtn9VDD-bBba9wDvh_k"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4722e9b911dc426ce3b5473d939f7d0e","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":776,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.934455,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/42aa0cb6-67fc-4612-9105-6110e1fbd868","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"20f2cbc0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/42aa0cb6-67fc-4612-9105-6110e1fbd868","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"20f2cbc0-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"20f2cbc0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/42aa0cb6-67fc-4612-9105-6110e1fbd868/signaling 200 12ms","method":"POST","requestID":"20f2cbc0-442b-11ef-8685-a1e9f27e6f28","responseTime":12,"status":200,"url":"/devices/42aa0cb6-67fc-4612-9105-6110e1fbd868/signaling"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70b6abe6-b1db-4aea-9540-5dbeb3a66cd0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70b6abe6-b1db-4aea-9540-5dbeb3a66cd0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:49.055167548Z"}]},"request_id":"e06f68d8-0e57-4f18-9e9d-2f464a552ed2","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213749.8971918} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/03082753-08b8-4ba5-8a80-60dd4fcee8b3"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"4d51db2d455ab75930eb794cd820a8f7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/03082753-08b8-4ba5-8a80-60dd4fcee8b3"},"level":"info","message":"Building connection plan","requestID":"4d51db2d455ab75930eb794cd820a8f7"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device1","serviceId":"electrical","uuid":"23f2dfc2-ac11-4046-bc32-15cbaaad5625"},{"config":{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}]},"role":"device2","serviceId":"electrical","uuid":"cb692cf2-0d34-477e-9795-f82b71432fd3"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"5b1341c2-5c6c-4197-a247-ddd82c61a45b"}]},"level":"info","message":"Built pairwise service configurations","requestID":"4d51db2d455ab75930eb794cd820a8f7"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/42aa0cb6-67fc-4612-9105-6110e1fbd868"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/70b6abe6-b1db-4aea-9540-5dbeb3a66cd0"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"4d51db2d455ab75930eb794cd820a8f7"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4722e9b911dc426ce3b5473d939f7d0e","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"20f53cc0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4722e9b911dc426ce3b5473d939f7d0e"} device-1 | {"level":"info","message":"GET /devices/70b6abe6-b1db-4aea-9540-5dbeb3a66cd0? 200 16ms","method":"GET","requestID":"4722e9b911dc426ce3b5473d939f7d0e","responseTime":16,"status":200,"url":"/devices/70b6abe6-b1db-4aea-9540-5dbeb3a66cd0?"} gateway-1 | {"time_local":"17/Jul/2024:10:55:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/70b6abe6-b1db-4aea-9540-5dbeb3a66cd0? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4722e9b911dc426ce3b5473d939f7d0e"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":778,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:49Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":778,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.075142,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:49Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"20f53cc0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213749,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0OX0.UnIsHFHMnIUnp8j224mSX_tIbtn9VDD-bBba9wDvh_k"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"20f53cc0-442b-11ef-8685-a1e9f27e6f28","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0OX0.UnIsHFHMnIUnp8j224mSX_tIbtn9VDD-bBba9wDvh_k","level":"info","message":"auth send jwt","requestID":"b42d4722c7ec7ab5c19e2f9ee7bd5b92"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b42d4722c7ec7ab5c19e2f9ee7bd5b92","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b42d4722c7ec7ab5c19e2f9ee7bd5b92"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":779,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:49Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":779,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.67285,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/42aa0cb6-67fc-4612-9105-6110e1fbd868","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"b42d4722c7ec7ab5c19e2f9ee7bd5b92","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/42aa0cb6-67fc-4612-9105-6110e1fbd868","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213749,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc0OX0.UnIsHFHMnIUnp8j224mSX_tIbtn9VDD-bBba9wDvh_k"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"b42d4722c7ec7ab5c19e2f9ee7bd5b92","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"03ba9bed-bd00-4c4f-8083-76034b4ad9b9","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213749.914083} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"44fdf01b-373a-40d2-a566-bf54e0c9d2f5","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213749.9144385} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42aa0cb6-67fc-4612-9105-6110e1fbd868","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42aa0cb6-67fc-4612-9105-6110e1fbd868","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:49.107149586Z"}]},"request_id":"f9f47cc2-1648-45d9-b075-129581deab53","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213749.9152243} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"20f53cc0-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b42d4722c7ec7ab5c19e2f9ee7bd5b92","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b42d4722c7ec7ab5c19e2f9ee7bd5b92"} device-1 | {"level":"info","message":"GET /devices/42aa0cb6-67fc-4612-9105-6110e1fbd868? 200 12ms","method":"GET","requestID":"b42d4722c7ec7ab5c19e2f9ee7bd5b92","responseTime":12,"status":200,"url":"/devices/42aa0cb6-67fc-4612-9105-6110e1fbd868?"} gateway-1 | {"time_local":"17/Jul/2024:10:55:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/42aa0cb6-67fc-4612-9105-6110e1fbd868? HTTP/1.1","status": "200","body_bytes_sent":"1086","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b42d4722c7ec7ab5c19e2f9ee7bd5b92"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"20f53cc0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"20f53cc0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/f735fadf-39f4-4b93-9316-843a77eafa46'","requestID":"20f53cc0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/f735fadf-39f4-4b93-9316-843a77eafa46'","requestID":"20f53cc0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"20f53cc0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 29ms","method":"POST","requestID":"20f53cc0-442b-11ef-8685-a1e9f27e6f28","responseTime":29,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"20f53cc0-442b-11ef-8685-a1e9f27e6f28"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/03082753-08b8-4ba5-8a80-60dd4fcee8b3"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"4d51db2d455ab75930eb794cd820a8f7"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"20fe1660-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":780,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:49Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70b6abe6-b1db-4aea-9540-5dbeb3a66cd0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bde38834-a8b4-4a45-9055-e4737fd18553","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213749.9628694} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":780,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.393821,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/70b6abe6-b1db-4aea-9540-5dbeb3a66cd0","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"20fe1660-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/70b6abe6-b1db-4aea-9540-5dbeb3a66cd0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"20fe1660-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"20fe1660-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/70b6abe6-b1db-4aea-9540-5dbeb3a66cd0/signaling 200 9ms","method":"POST","requestID":"20fe1660-442b-11ef-8685-a1e9f27e6f28","responseTime":9,"status":200,"url":"/devices/70b6abe6-b1db-4aea-9540-5dbeb3a66cd0/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"20ff9d00-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":781,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:49Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42aa0cb6-67fc-4612-9105-6110e1fbd868","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"84fbebba-74ff-4d8d-b1d8-0de9122bd1f6","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213749.9732332} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":781,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.919501,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/42aa0cb6-67fc-4612-9105-6110e1fbd868","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"20ff9d00-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/42aa0cb6-67fc-4612-9105-6110e1fbd868","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"20ff9d00-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"20ff9d00-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/42aa0cb6-67fc-4612-9105-6110e1fbd868/signaling 200 9ms","method":"POST","requestID":"20ff9d00-442b-11ef-8685-a1e9f27e6f28","responseTime":9,"status":200,"url":"/devices/42aa0cb6-67fc-4612-9105-6110e1fbd868/signaling"} device-1 | {"device":"70b6abe6-b1db-4aea-9540-5dbeb3a66cd0","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-local-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"f735fadf-39f4-4b93-9316-843a77eafa46","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"42aa0cb6-67fc-4612-9105-6110e1fbd868","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new have-remote-offer","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"f735fadf-39f4-4b93-9316-843a77eafa46","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"42aa0cb6-67fc-4612-9105-6110e1fbd868","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"42aa0cb6-67fc-4612-9105-6110e1fbd868","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged new new stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"42aa0cb6-67fc-4612-9105-6110e1fbd868","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"42aa0cb6-67fc-4612-9105-6110e1fbd868","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/f735fadf-39f4-4b93-9316-843a77eafa46' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f735fadf-39f4-4b93-9316-843a77eafa46","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1e30b892f430ff1ca1c0574c6e6c44e9","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1e30b892f430ff1ca1c0574c6e6c44e9","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/42aa0cb6-67fc-4612-9105-6110e1fbd868"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/70b6abe6-b1db-4aea-9540-5dbeb3a66cd0"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/f735fadf-39f4-4b93-9316-843a77eafa46"}}},"level":"info","message":"received a callback","requestID":"1e30b892f430ff1ca1c0574c6e6c44e9"} device-1 | {"device":"70b6abe6-b1db-4aea-9540-5dbeb3a66cd0","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"70b6abe6-b1db-4aea-9540-5dbeb3a66cd0","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"70b6abe6-b1db-4aea-9540-5dbeb3a66cd0","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 5ms","method":"POST","requestID":"1e30b892f430ff1ca1c0574c6e6c44e9","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:55:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.011","http_referrer":"","http_user_agent":"node-fetch","requestID":"1e30b892f430ff1ca1c0574c6e6c44e9"} device-1 | {"data":{"peerconnection":"f735fadf-39f4-4b93-9316-843a77eafa46","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"42aa0cb6-67fc-4612-9105-6110e1fbd868","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"70b6abe6-b1db-4aea-9540-5dbeb3a66cd0","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"70b6abe6-b1db-4aea-9540-5dbeb3a66cd0","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"42aa0cb6-67fc-4612-9105-6110e1fbd868","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connected completed stable","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"data":{"peerconnection":"f735fadf-39f4-4b93-9316-843a77eafa46","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/f735fadf-39f4-4b93-9316-843a77eafa46' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f735fadf-39f4-4b93-9316-843a77eafa46","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8e2e1235639cd8ba308ee8ce5271cff9","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"8e2e1235639cd8ba308ee8ce5271cff9","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/42aa0cb6-67fc-4612-9105-6110e1fbd868"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/70b6abe6-b1db-4aea-9540-5dbeb3a66cd0"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/f735fadf-39f4-4b93-9316-843a77eafa46"}}},"level":"info","message":"received a callback","requestID":"8e2e1235639cd8ba308ee8ce5271cff9"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"223cd7f0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":782,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:52Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff735fadf-39f4-4b93-9316-843a77eafa46","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0b845aaa-ddd8-4b1e-9b1f-a5cba0e54c54","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213752.0532596} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":782,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.790842,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/f735fadf-39f4-4b93-9316-843a77eafa46","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"223cd7f0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/f735fadf-39f4-4b93-9316-843a77eafa46","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"223cd7f0-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"223cd7f0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /peerconnections/f735fadf-39f4-4b93-9316-843a77eafa46 200 11ms","method":"GET","requestID":"223cd7f0-442b-11ef-8685-a1e9f27e6f28","responseTime":11,"status":200,"url":"/peerconnections/f735fadf-39f4-4b93-9316-843a77eafa46"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 41ms","method":"POST","requestID":"8e2e1235639cd8ba308ee8ce5271cff9","responseTime":41,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:55:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.045","http_referrer":"","http_user_agent":"node-fetch","requestID":"8e2e1235639cd8ba308ee8ce5271cff9"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"22422f20-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":783,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:52Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42aa0cb6-67fc-4612-9105-6110e1fbd868","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"04d027ad-abda-484f-a8ef-f49dfe5e60c5","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213752.0884283} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":783,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.890364,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/42aa0cb6-67fc-4612-9105-6110e1fbd868","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"22422f20-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/42aa0cb6-67fc-4612-9105-6110e1fbd868","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"22422f20-442b-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"22422f20-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/42aa0cb6-67fc-4612-9105-6110e1fbd868/signaling 200 13ms","method":"POST","requestID":"22422f20-442b-11ef-8685-a1e9f27e6f28","responseTime":13,"status":200,"url":"/devices/42aa0cb6-67fc-4612-9105-6110e1fbd868/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2244a020-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":784,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:52Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70b6abe6-b1db-4aea-9540-5dbeb3a66cd0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5bb1852f-3844-41c4-8b7d-16d1bd8c3147","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213752.1035166} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":784,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.758361,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/70b6abe6-b1db-4aea-9540-5dbeb3a66cd0","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"2244a020-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/70b6abe6-b1db-4aea-9540-5dbeb3a66cd0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"2244a020-442b-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2244a020-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/70b6abe6-b1db-4aea-9540-5dbeb3a66cd0/signaling 200 12ms","method":"POST","requestID":"2244a020-442b-11ef-8685-a1e9f27e6f28","responseTime":12,"status":200,"url":"/devices/70b6abe6-b1db-4aea-9540-5dbeb3a66cd0/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc1Mn0.621xzzFlvZ8-raWIIlQfx4WlOaV3v73R62r3DxW1Wdo","level":"info","message":"auth send jwt","requestID":"0568eb98b3c7e697ab8862577816835b"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"0568eb98b3c7e697ab8862577816835b","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/03082753-08b8-4ba5-8a80-60dd4fcee8b3","requestID":"0568eb98b3c7e697ab8862577816835b"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":785,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:52Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":785,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.355352,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/03082753-08b8-4ba5-8a80-60dd4fcee8b3","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0568eb98b3c7e697ab8862577816835b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:http://localhost/experiments/03082753-08b8-4ba5-8a80-60dd4fcee8b3","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213752,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc1Mn0.621xzzFlvZ8-raWIIlQfx4WlOaV3v73R62r3DxW1Wdo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0568eb98b3c7e697ab8862577816835b","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/03082753-08b8-4ba5-8a80-60dd4fcee8b3","requestID":"0568eb98b3c7e697ab8862577816835b"} experiment-1 | {"level":"info","message":"GET /experiments/03082753-08b8-4ba5-8a80-60dd4fcee8b3 200 15ms","method":"GET","requestID":"0568eb98b3c7e697ab8862577816835b","responseTime":15,"status":200,"url":"/experiments/03082753-08b8-4ba5-8a80-60dd4fcee8b3"} gateway-1 | {"time_local":"17/Jul/2024:10:55:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/03082753-08b8-4ba5-8a80-60dd4fcee8b3 HTTP/1.1","status": "200","body_bytes_sent":"1292","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0568eb98b3c7e697ab8862577816835b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc1Mn0.621xzzFlvZ8-raWIIlQfx4WlOaV3v73R62r3DxW1Wdo","level":"info","message":"auth send jwt","requestID":"f8d5aa0a461ca23e88134af13f371bfa"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f8d5aa0a461ca23e88134af13f371bfa","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/03082753-08b8-4ba5-8a80-60dd4fcee8b3","requestID":"f8d5aa0a461ca23e88134af13f371bfa"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":786,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:52Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":786,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.253156,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:52Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/03082753-08b8-4ba5-8a80-60dd4fcee8b3","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f8d5aa0a461ca23e88134af13f371bfa","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:http://localhost/experiments/03082753-08b8-4ba5-8a80-60dd4fcee8b3","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213752,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc1Mn0.621xzzFlvZ8-raWIIlQfx4WlOaV3v73R62r3DxW1Wdo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f8d5aa0a461ca23e88134af13f371bfa","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/03082753-08b8-4ba5-8a80-60dd4fcee8b3"},"level":"info","message":"Attempting to finish experiment","requestID":"f8d5aa0a461ca23e88134af13f371bfa"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"22512340-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":787,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:52Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":787,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.245261,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:52Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/f735fadf-39f4-4b93-9316-843a77eafa46","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"22512340-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"peerconnection:http://localhost/peerconnections/f735fadf-39f4-4b93-9316-843a77eafa46","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213752,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc1Mn0.621xzzFlvZ8-raWIIlQfx4WlOaV3v73R62r3DxW1Wdo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"22512340-442b-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"device":"70b6abe6-b1db-4aea-9540-5dbeb3a66cd0","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"70b6abe6-b1db-4aea-9540-5dbeb3a66cd0","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"70b6abe6-b1db-4aea-9540-5dbeb3a66cd0","deviceName":"Python Device 1","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"42aa0cb6-67fc-4612-9105-6110e1fbd868","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"42aa0cb6-67fc-4612-9105-6110e1fbd868","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"device":"42aa0cb6-67fc-4612-9105-6110e1fbd868","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged closed closed closed","origin":{"funcName":"connectionstatechanged","lineno":62,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/f735fadf-39f4-4b93-9316-843a77eafa46' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/f735fadf-39f4-4b93-9316-843a77eafa46' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f735fadf-39f4-4b93-9316-843a77eafa46","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff735fadf-39f4-4b93-9316-843a77eafa46': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff735fadf-39f4-4b93-9316-843a77eafa46","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]},"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":null},"raw_response":{},"request_id":"2d08ab48-e2ba-4e03-83a2-d2e0e07e6f34","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213752.2044666} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9afb5b88d4eef26e9bae4b3227d0dd3a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"9afb5b88d4eef26e9bae4b3227d0dd3a","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5d22d670-9b58-486f-adce-c61b1079ceb4","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213752.205118} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"22512340-442b-11ef-8685-a1e9f27e6f28","responseTime":13,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d3e7871138eec703896e5075cc0ec140","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/42aa0cb6-67fc-4612-9105-6110e1fbd868"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/70b6abe6-b1db-4aea-9540-5dbeb3a66cd0"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/f735fadf-39f4-4b93-9316-843a77eafa46"}}},"level":"info","message":"received a callback","requestID":"9afb5b88d4eef26e9bae4b3227d0dd3a"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"d3e7871138eec703896e5075cc0ec140","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/42aa0cb6-67fc-4612-9105-6110e1fbd868"},{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/70b6abe6-b1db-4aea-9540-5dbeb3a66cd0"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/f735fadf-39f4-4b93-9316-843a77eafa46"}}},"level":"info","message":"received a callback","requestID":"d3e7871138eec703896e5075cc0ec140"} device-1 | {"data":{"peerconnection":"f735fadf-39f4-4b93-9316-843a77eafa46","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"22512340-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"DELETE /peerconnections/f735fadf-39f4-4b93-9316-843a77eafa46 204 50ms","method":"DELETE","requestID":"22512340-442b-11ef-8685-a1e9f27e6f28","responseTime":50,"status":204,"url":"/peerconnections/f735fadf-39f4-4b93-9316-843a77eafa46"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/03082753-08b8-4ba5-8a80-60dd4fcee8b3"},"level":"info","message":"Successfully finished experiment","requestID":"f8d5aa0a461ca23e88134af13f371bfa"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"225c46d0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":788,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:52Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F42aa0cb6-67fc-4612-9105-6110e1fbd868","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1b65c0e6-40ff-4c3a-92e2-d3337d13c579","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213752.2592432} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":788,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.998161,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/42aa0cb6-67fc-4612-9105-6110e1fbd868","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"225c46d0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/42aa0cb6-67fc-4612-9105-6110e1fbd868","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"225c46d0-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"225c46d0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/42aa0cb6-67fc-4612-9105-6110e1fbd868/signaling 200 12ms","method":"POST","requestID":"225c46d0-442b-11ef-8685-a1e9f27e6f28","responseTime":12,"status":200,"url":"/devices/42aa0cb6-67fc-4612-9105-6110e1fbd868/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"225e90c0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F03082753-08b8-4ba5-8a80-60dd4fcee8b3': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F03082753-08b8-4ba5-8a80-60dd4fcee8b3","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]},"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":null},"raw_response":{},"request_id":"fe23ad36-4689-49b1-a8fe-3679de3d776f","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213752.26898} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"07d313ac-ab93-4030-ab6b-920cdb934e1d","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213752.2694776} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"f8d5aa0a461ca23e88134af13f371bfa","responseTime":20,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":789,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:52Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F70b6abe6-b1db-4aea-9540-5dbeb3a66cd0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"14d7d92a-f534-44b4-8e45-7c495b896b72","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213752.2766342} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":789,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.626842,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/70b6abe6-b1db-4aea-9540-5dbeb3a66cd0","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"225e90c0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/70b6abe6-b1db-4aea-9540-5dbeb3a66cd0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"225e90c0-442b-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"225e90c0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/70b6abe6-b1db-4aea-9540-5dbeb3a66cd0/signaling 200 15ms","method":"POST","requestID":"225e90c0-442b-11ef-8685-a1e9f27e6f28","responseTime":15,"status":200,"url":"/devices/70b6abe6-b1db-4aea-9540-5dbeb3a66cd0/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/03082753-08b8-4ba5-8a80-60dd4fcee8b3","requestID":"f8d5aa0a461ca23e88134af13f371bfa"} gateway-1 | {"time_local":"17/Jul/2024:10:55:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/03082753-08b8-4ba5-8a80-60dd4fcee8b3 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.180","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f8d5aa0a461ca23e88134af13f371bfa"} gateway-1 | {"time_local":"17/Jul/2024:10:55:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2707","request_time":"2.694","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"b1a9f03788ca1c5c6a692fe433f08e99"} gateway-1 | {"time_local":"17/Jul/2024:10:55:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2709","request_time":"2.704","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.9.5","requestID":"a57056e13db15847c769ece6daa9a684"} experiment-1 | {"level":"info","message":"DELETE /experiments/03082753-08b8-4ba5-8a80-60dd4fcee8b3 204 176ms","method":"DELETE","requestID":"f8d5aa0a461ca23e88134af13f371bfa","responseTime":176,"status":204,"url":"/experiments/03082753-08b8-4ba5-8a80-60dd4fcee8b3"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 134ms","method":"POST","requestID":"9afb5b88d4eef26e9bae4b3227d0dd3a","responseTime":134,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:55:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.140","http_referrer":"","http_user_agent":"node-fetch","requestID":"9afb5b88d4eef26e9bae4b3227d0dd3a"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 133ms","method":"POST","requestID":"d3e7871138eec703896e5075cc0ec140","responseTime":133,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:55:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.140","http_referrer":"","http_user_agent":"node-fetch","requestID":"d3e7871138eec703896e5075cc0ec140"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc1Mn0.621xzzFlvZ8-raWIIlQfx4WlOaV3v73R62r3DxW1Wdo","level":"info","message":"auth send jwt","requestID":"3b6e386b6fc6d9d00a4044938800e969"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3b6e386b6fc6d9d00a4044938800e969","responseTime":4,"status":200,"url":"/auth"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/70b6abe6-b1db-4aea-9540-5dbeb3a66cd0' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"3b6e386b6fc6d9d00a4044938800e969"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":790,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:52Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":790,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.847179,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:52Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"3b6e386b6fc6d9d00a4044938800e969","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213752,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc1Mn0.621xzzFlvZ8-raWIIlQfx4WlOaV3v73R62r3DxW1Wdo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"3b6e386b6fc6d9d00a4044938800e969","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/42aa0cb6-67fc-4612-9105-6110e1fbd868' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F093e6dd8-698b-4605-afea-976ca644d081","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"f45dec17-a351-4a0f-a558-cc4c172f1ad9","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213752.3682976} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3b6e386b6fc6d9d00a4044938800e969","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"13ca5460-0b61-4145-814c-31f23bd2c26c","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213752.375152} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"3b6e386b6fc6d9d00a4044938800e969","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F093e6dd8-698b-4605-afea-976ca644d081","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"954d1d8f-a1e8-48fe-9bef-8524386338b7","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213752.3853533} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"aaa66e1b-0b79-4aba-9d73-0c6368a5c4fa","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213752.3855019} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"3b6e386b6fc6d9d00a4044938800e969","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F093e6dd8-698b-4605-afea-976ca644d081","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F093e6dd8-698b-4605-afea-976ca644d081","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:52.385310333Z"}]},"request_id":"441acd26-8b65-4e71-8bba-be7229ad3035","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213752.3909235} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3b6e386b6fc6d9d00a4044938800e969","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"3b6e386b6fc6d9d00a4044938800e969"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"3b6e386b6fc6d9d00a4044938800e969","responseTime":46,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"17/Jul/2024:10:55:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.052","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3b6e386b6fc6d9d00a4044938800e969"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc1Mn0.621xzzFlvZ8-raWIIlQfx4WlOaV3v73R62r3DxW1Wdo","level":"info","message":"auth send jwt","requestID":"83b9dbae02943577d11bc44772114724"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"83b9dbae02943577d11bc44772114724","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"83b9dbae02943577d11bc44772114724"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":791,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:52Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":791,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.775364,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:52Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"83b9dbae02943577d11bc44772114724","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213752,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc1Mn0.621xzzFlvZ8-raWIIlQfx4WlOaV3v73R62r3DxW1Wdo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"83b9dbae02943577d11bc44772114724","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d56a1c3-aca6-41d0-aa83-5617be8e5775","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"fc89a40b-4175-4ce6-9e16-21b583e56ee2","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213752.421195} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"83b9dbae02943577d11bc44772114724","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d0d9f0f3-bbba-4ee2-afa2-6943d25c5f60","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213752.426936} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"83b9dbae02943577d11bc44772114724","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d56a1c3-aca6-41d0-aa83-5617be8e5775","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"84237a48-1d0d-4a31-be9c-c3a51affc701","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213752.4380913} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b348148c-11bd-4482-8fc9-7a711d6f5290","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213752.4382608} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"83b9dbae02943577d11bc44772114724","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d56a1c3-aca6-41d0-aa83-5617be8e5775","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d56a1c3-aca6-41d0-aa83-5617be8e5775","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:52.438032586Z"}]},"request_id":"6c57b76a-f4e8-4bea-9dc6-d6e4cfee42ce","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213752.4429865} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"83b9dbae02943577d11bc44772114724","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"83b9dbae02943577d11bc44772114724"} gateway-1 | {"time_local":"17/Jul/2024:10:55:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"83b9dbae02943577d11bc44772114724"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"83b9dbae02943577d11bc44772114724","responseTime":46,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"191e02aac41beef911aab385fea3266a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"191e02aac41beef911aab385fea3266a","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"17/Jul/2024:10:55:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/5d56a1c3-aca6-41d0-aa83-5617be8e5775/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"191e02aac41beef911aab385fea3266a"} device-1 | {"level":"info","message":"OPTIONS /devices/5d56a1c3-aca6-41d0-aa83-5617be8e5775/websocket 200 1ms","method":"OPTIONS","requestID":"191e02aac41beef911aab385fea3266a","responseTime":1,"status":200,"url":"/devices/5d56a1c3-aca6-41d0-aa83-5617be8e5775/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc1NH0.fkywz6QzYYTfoAAvaDsgJjd9Qal3ObWsbbLK3AE8szQ","level":"info","message":"auth send jwt","requestID":"0ac8e6373710261ccd277b68fac61b83"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"0ac8e6373710261ccd277b68fac61b83","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"0ac8e6373710261ccd277b68fac61b83"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":792,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:54Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":792,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.225117,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:54Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/5d56a1c3-aca6-41d0-aa83-5617be8e5775","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"0ac8e6373710261ccd277b68fac61b83","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/5d56a1c3-aca6-41d0-aa83-5617be8e5775","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213754,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc1NH0.fkywz6QzYYTfoAAvaDsgJjd9Qal3ObWsbbLK3AE8szQ"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6605a56f09f1b4488bff9d5fbbc11c79","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0ac8e6373710261ccd277b68fac61b83","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"6605a56f09f1b4488bff9d5fbbc11c79","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"17/Jul/2024:10:55:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/093e6dd8-698b-4605-afea-976ca644d081/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.005","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"6605a56f09f1b4488bff9d5fbbc11c79"} device-1 | {"level":"info","message":"OPTIONS /devices/093e6dd8-698b-4605-afea-976ca644d081/websocket 200 1ms","method":"OPTIONS","requestID":"6605a56f09f1b4488bff9d5fbbc11c79","responseTime":1,"status":200,"url":"/devices/093e6dd8-698b-4605-afea-976ca644d081/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc1NH0.fkywz6QzYYTfoAAvaDsgJjd9Qal3ObWsbbLK3AE8szQ","level":"info","message":"auth send jwt","requestID":"e4d76c12d1cdd07fedbbf832863527e9"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"e4d76c12d1cdd07fedbbf832863527e9","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"e4d76c12d1cdd07fedbbf832863527e9"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"0ac8e6373710261ccd277b68fac61b83"} gateway-1 | {"time_local":"17/Jul/2024:10:55:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/5d56a1c3-aca6-41d0-aa83-5617be8e5775/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.029","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"0ac8e6373710261ccd277b68fac61b83"} device-1 | {"level":"info","message":"POST /devices/5d56a1c3-aca6-41d0-aa83-5617be8e5775/websocket 200 22ms","method":"POST","requestID":"0ac8e6373710261ccd277b68fac61b83","responseTime":22,"status":200,"url":"/devices/5d56a1c3-aca6-41d0-aa83-5617be8e5775/websocket"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":793,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:54Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":793,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.180473,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:54Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/093e6dd8-698b-4605-afea-976ca644d081","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"e4d76c12d1cdd07fedbbf832863527e9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/093e6dd8-698b-4605-afea-976ca644d081","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213754,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc1NH0.fkywz6QzYYTfoAAvaDsgJjd9Qal3ObWsbbLK3AE8szQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e4d76c12d1cdd07fedbbf832863527e9","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"e4d76c12d1cdd07fedbbf832863527e9"} gateway-1 | {"time_local":"17/Jul/2024:10:55:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/093e6dd8-698b-4605-afea-976ca644d081/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.028","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"e4d76c12d1cdd07fedbbf832863527e9"} device-1 | {"level":"info","message":"POST /devices/093e6dd8-698b-4605-afea-976ca644d081/websocket 200 19ms","method":"POST","requestID":"e4d76c12d1cdd07fedbbf832863527e9","responseTime":19,"status":200,"url":"/devices/093e6dd8-698b-4605-afea-976ca644d081/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/5d56a1c3-aca6-41d0-aa83-5617be8e5775' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/093e6dd8-698b-4605-afea-976ca644d081' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc1NH0.fkywz6QzYYTfoAAvaDsgJjd9Qal3ObWsbbLK3AE8szQ","level":"info","message":"auth send jwt","requestID":"45edcd11fea5be72078d858a322800ef"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"45edcd11fea5be72078d858a322800ef","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"45edcd11fea5be72078d858a322800ef"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":794,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:54Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":794,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.664228,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/093e6dd8-698b-4605-afea-976ca644d081","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"45edcd11fea5be72078d858a322800ef","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/093e6dd8-698b-4605-afea-976ca644d081","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213754,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc1NH0.fkywz6QzYYTfoAAvaDsgJjd9Qal3ObWsbbLK3AE8szQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"45edcd11fea5be72078d858a322800ef","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F093e6dd8-698b-4605-afea-976ca644d081","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F093e6dd8-698b-4605-afea-976ca644d081","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:52.385310333Z"}]},"request_id":"73f51ee1-aa97-4dd7-8f8f-b054ebaa20d7","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213754.4521892} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"45edcd11fea5be72078d858a322800ef","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"45edcd11fea5be72078d858a322800ef"} gateway-1 | {"time_local":"17/Jul/2024:10:55:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/093e6dd8-698b-4605-afea-976ca644d081? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"45edcd11fea5be72078d858a322800ef"} device-1 | {"level":"info","message":"GET /devices/093e6dd8-698b-4605-afea-976ca644d081? 200 11ms","method":"GET","requestID":"45edcd11fea5be72078d858a322800ef","responseTime":11,"status":200,"url":"/devices/093e6dd8-698b-4605-afea-976ca644d081?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc1NH0.fkywz6QzYYTfoAAvaDsgJjd9Qal3ObWsbbLK3AE8szQ","level":"info","message":"auth send jwt","requestID":"2c5b4efe53af0e69923e198e3e7e81c7"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2c5b4efe53af0e69923e198e3e7e81c7","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2c5b4efe53af0e69923e198e3e7e81c7"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":795,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:54Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":795,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.530552,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5d56a1c3-aca6-41d0-aa83-5617be8e5775","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"2c5b4efe53af0e69923e198e3e7e81c7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/5d56a1c3-aca6-41d0-aa83-5617be8e5775","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213754,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc1NH0.fkywz6QzYYTfoAAvaDsgJjd9Qal3ObWsbbLK3AE8szQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2c5b4efe53af0e69923e198e3e7e81c7","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d56a1c3-aca6-41d0-aa83-5617be8e5775","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d56a1c3-aca6-41d0-aa83-5617be8e5775","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:52.438032586Z"}]},"request_id":"393bfc29-837f-44b9-8b85-5d7a2e46047a","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213754.473934} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2c5b4efe53af0e69923e198e3e7e81c7","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2c5b4efe53af0e69923e198e3e7e81c7"} gateway-1 | {"time_local":"17/Jul/2024:10:55:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/5d56a1c3-aca6-41d0-aa83-5617be8e5775? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2c5b4efe53af0e69923e198e3e7e81c7"} device-1 | {"level":"info","message":"GET /devices/5d56a1c3-aca6-41d0-aa83-5617be8e5775? 200 19ms","method":"GET","requestID":"2c5b4efe53af0e69923e198e3e7e81c7","responseTime":19,"status":200,"url":"/devices/5d56a1c3-aca6-41d0-aa83-5617be8e5775?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc1NH0.fkywz6QzYYTfoAAvaDsgJjd9Qal3ObWsbbLK3AE8szQ","level":"info","message":"auth send jwt","requestID":"d568a9052a7ea78833dddd8105a83b0f"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"d568a9052a7ea78833dddd8105a83b0f","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"d568a9052a7ea78833dddd8105a83b0f"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":796,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:54Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":796,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.172725,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:54Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"d568a9052a7ea78833dddd8105a83b0f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213754,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc1NH0.fkywz6QzYYTfoAAvaDsgJjd9Qal3ObWsbbLK3AE8szQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d568a9052a7ea78833dddd8105a83b0f","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c7984dd8-ae3f-4e5b-b7cf-d2b90524f9f3"},"level":"info","message":"Attempting to run experiment","requestID":"d568a9052a7ea78833dddd8105a83b0f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c7984dd8-ae3f-4e5b-b7cf-d2b90524f9f3"},"level":"info","message":"Attempting to book experiment","requestID":"d568a9052a7ea78833dddd8105a83b0f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c7984dd8-ae3f-4e5b-b7cf-d2b90524f9f3"},"level":"info","message":"Successfully booked experiment","requestID":"d568a9052a7ea78833dddd8105a83b0f"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"23b7b820-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"23b80640-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":797,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:54Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":797,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.764034,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:54Z"} authorization-1 | {"client_addr":"127.0.0.1:35236","level":"info","msg":"Received request.","req_id":798,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/093e6dd8-698b-4605-afea-976ca644d081","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"23b7b820-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/093e6dd8-698b-4605-afea-976ca644d081","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213754,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc1NH0.fkywz6QzYYTfoAAvaDsgJjd9Qal3ObWsbbLK3AE8szQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"23b7b820-442b-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:35236","level":"info","msg":"Sent response.","req_id":798,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.960217,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5d56a1c3-aca6-41d0-aa83-5617be8e5775","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"23b80640-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/5d56a1c3-aca6-41d0-aa83-5617be8e5775","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213754,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc1NH0.fkywz6QzYYTfoAAvaDsgJjd9Qal3ObWsbbLK3AE8szQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"23b80640-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F093e6dd8-698b-4605-afea-976ca644d081","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F093e6dd8-698b-4605-afea-976ca644d081","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:52.385310333Z"}]},"request_id":"9f373ec4-d81a-4e1e-ab07-0bd7e97894ea","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213754.5414317} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"23b7b820-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d56a1c3-aca6-41d0-aa83-5617be8e5775","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d56a1c3-aca6-41d0-aa83-5617be8e5775","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:52.438032586Z"}]},"request_id":"e446cfd1-5844-48da-9e1c-3580f9c47350","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213754.5430765} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"23b80640-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"23b7b820-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/093e6dd8-698b-4605-afea-976ca644d081? 200 19ms","method":"GET","requestID":"23b7b820-442b-11ef-8685-a1e9f27e6f28","responseTime":19,"status":200,"url":"/devices/093e6dd8-698b-4605-afea-976ca644d081?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"23b80640-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/5d56a1c3-aca6-41d0-aa83-5617be8e5775? 200 19ms","method":"GET","requestID":"23b80640-442b-11ef-8685-a1e9f27e6f28","responseTime":19,"status":200,"url":"/devices/5d56a1c3-aca6-41d0-aa83-5617be8e5775?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c7984dd8-ae3f-4e5b-b7cf-d2b90524f9f3"},"level":"info","message":"Setting up experiment","requestID":"d568a9052a7ea78833dddd8105a83b0f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c7984dd8-ae3f-4e5b-b7cf-d2b90524f9f3"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"d568a9052a7ea78833dddd8105a83b0f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c7984dd8-ae3f-4e5b-b7cf-d2b90524f9f3"},"level":"info","message":"Successfully locked booking for experiment","requestID":"d568a9052a7ea78833dddd8105a83b0f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c7984dd8-ae3f-4e5b-b7cf-d2b90524f9f3"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"d568a9052a7ea78833dddd8105a83b0f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c7984dd8-ae3f-4e5b-b7cf-d2b90524f9f3"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"d568a9052a7ea78833dddd8105a83b0f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c7984dd8-ae3f-4e5b-b7cf-d2b90524f9f3"},"level":"info","message":"Attempting to update booking for experiment","requestID":"d568a9052a7ea78833dddd8105a83b0f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c7984dd8-ae3f-4e5b-b7cf-d2b90524f9f3"},"level":"info","message":"Successfully updated booking for experiment","requestID":"d568a9052a7ea78833dddd8105a83b0f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c7984dd8-ae3f-4e5b-b7cf-d2b90524f9f3"},"level":"info","message":"Successfully set up experiment","requestID":"d568a9052a7ea78833dddd8105a83b0f"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"23c61000-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"23c65e20-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"23c6ac40-442b-11ef-8685-a1e9f27e6f28"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c7984dd8-ae3f-4e5b-b7cf-d2b90524f9f3"},"level":"info","message":"Successfully running experiment","requestID":"d568a9052a7ea78833dddd8105a83b0f"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":799,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:54Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":799,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.271918,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/093e6dd8-698b-4605-afea-976ca644d081","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"23c61000-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/093e6dd8-698b-4605-afea-976ca644d081","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213754,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc1NH0.fkywz6QzYYTfoAAvaDsgJjd9Qal3ObWsbbLK3AE8szQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"23c61000-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:35236","level":"info","msg":"Received request.","req_id":800,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:54Z"} authorization-1 | {"client_addr":"127.0.0.1:35236","level":"info","msg":"Sent response.","req_id":800,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.274789,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5d56a1c3-aca6-41d0-aa83-5617be8e5775","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"23c65e20-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/5d56a1c3-aca6-41d0-aa83-5617be8e5775","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213754,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc1NH0.fkywz6QzYYTfoAAvaDsgJjd9Qal3ObWsbbLK3AE8szQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"23c65e20-442b-11ef-8685-a1e9f27e6f28","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":801,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:54Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F093e6dd8-698b-4605-afea-976ca644d081","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"faa62a82-64d5-42da-996b-f3c91fc0855c","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213754.6377933} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":801,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.262497,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/093e6dd8-698b-4605-afea-976ca644d081","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"23c6ac40-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/093e6dd8-698b-4605-afea-976ca644d081","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"23c6ac40-442b-11ef-8685-a1e9f27e6f28","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F093e6dd8-698b-4605-afea-976ca644d081","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F093e6dd8-698b-4605-afea-976ca644d081","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:52.385310333Z"}]},"request_id":"b84ea588-6a88-4ae4-8a73-1cda7f84b1b6","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213754.6415281} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"23c6ac40-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"23c61000-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d56a1c3-aca6-41d0-aa83-5617be8e5775","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d56a1c3-aca6-41d0-aa83-5617be8e5775","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:52.438032586Z"}]},"request_id":"067abfb3-f9af-4754-9980-ae58e173eccc","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213754.6448555} device-1 | {"level":"info","message":"POST /devices/093e6dd8-698b-4605-afea-976ca644d081/signaling 200 18ms","method":"POST","requestID":"23c6ac40-442b-11ef-8685-a1e9f27e6f28","responseTime":18,"status":200,"url":"/devices/093e6dd8-698b-4605-afea-976ca644d081/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"23c65e20-442b-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"23c9e090-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"23c61000-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/093e6dd8-698b-4605-afea-976ca644d081? 200 30ms","method":"GET","requestID":"23c61000-442b-11ef-8685-a1e9f27e6f28","responseTime":30,"status":200,"url":"/devices/093e6dd8-698b-4605-afea-976ca644d081?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"23c65e20-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/5d56a1c3-aca6-41d0-aa83-5617be8e5775? 200 29ms","method":"GET","requestID":"23c65e20-442b-11ef-8685-a1e9f27e6f28","responseTime":29,"status":200,"url":"/devices/5d56a1c3-aca6-41d0-aa83-5617be8e5775?"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":802,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:54Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d56a1c3-aca6-41d0-aa83-5617be8e5775","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"35c65159-ccdb-4b6a-b90b-f0390d3e55dc","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213754.6566985} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc7984dd8-ae3f-4e5b-b7cf-d2b90524f9f3#owner@http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc7984dd8-ae3f-4e5b-b7cf-d2b90524f9f3","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"2e566199-a4ec-4ae1-8da1-d0e948d7a4e1","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213754.657165} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"23cb4020-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"01e63f40-1681-4899-8ccd-b4207c23bbfb","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213754.6578586} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":802,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.677335,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5d56a1c3-aca6-41d0-aa83-5617be8e5775","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"23c9e090-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5d56a1c3-aca6-41d0-aa83-5617be8e5775","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"23c9e090-442b-11ef-8685-a1e9f27e6f28","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/update 200 27ms","method":"POST","requestID":"d568a9052a7ea78833dddd8105a83b0f","responseTime":27,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"23c9e090-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":803,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:54Z"} device-1 | {"level":"info","message":"POST /devices/5d56a1c3-aca6-41d0-aa83-5617be8e5775/signaling 200 14ms","method":"POST","requestID":"23c9e090-442b-11ef-8685-a1e9f27e6f28","responseTime":14,"status":200,"url":"/devices/5d56a1c3-aca6-41d0-aa83-5617be8e5775/signaling"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F093e6dd8-698b-4605-afea-976ca644d081","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"93b21579-12a0-4425-896f-fb54e5a9140a","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213754.6659653} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":803,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.434295,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/093e6dd8-698b-4605-afea-976ca644d081","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"23cb4020-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/093e6dd8-698b-4605-afea-976ca644d081","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"23cb4020-442b-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"23cb4020-442b-11ef-8685-a1e9f27e6f28"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/c7984dd8-ae3f-4e5b-b7cf-d2b90524f9f3","user":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"d568a9052a7ea78833dddd8105a83b0f"} device-1 | {"level":"info","message":"POST /devices/093e6dd8-698b-4605-afea-976ca644d081/signaling 200 14ms","method":"POST","requestID":"23cb4020-442b-11ef-8685-a1e9f27e6f28","responseTime":14,"status":200,"url":"/devices/093e6dd8-698b-4605-afea-976ca644d081/signaling"} gateway-1 | {"time_local":"17/Jul/2024:10:55:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"807","request_time":"0.189","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d568a9052a7ea78833dddd8105a83b0f"} experiment-1 | {"level":"info","message":"POST /experiments? 201 182ms","method":"POST","requestID":"d568a9052a7ea78833dddd8105a83b0f","responseTime":182,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"23cdff40-442b-11ef-8685-a1e9f27e6f28"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc1NH0.fkywz6QzYYTfoAAvaDsgJjd9Qal3ObWsbbLK3AE8szQ","level":"info","message":"auth send jwt","requestID":"e4d26f5025e8168ab7f125a34157ba8c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e4d26f5025e8168ab7f125a34157ba8c","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":804,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:54Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e4d26f5025e8168ab7f125a34157ba8c"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d56a1c3-aca6-41d0-aa83-5617be8e5775","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"84f26c8d-dbd9-4392-a50f-cd40cc700ff7","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213754.6819499} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":804,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.762839,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:54Z"} authorization-1 | {"client_addr":"127.0.0.1:35236","level":"info","msg":"Received request.","req_id":805,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5d56a1c3-aca6-41d0-aa83-5617be8e5775","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"23cdff40-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5d56a1c3-aca6-41d0-aa83-5617be8e5775","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"23cdff40-442b-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:35236","level":"info","msg":"Sent response.","req_id":805,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.574713,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/093e6dd8-698b-4605-afea-976ca644d081","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"e4d26f5025e8168ab7f125a34157ba8c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/093e6dd8-698b-4605-afea-976ca644d081","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213754,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc1NH0.fkywz6QzYYTfoAAvaDsgJjd9Qal3ObWsbbLK3AE8szQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e4d26f5025e8168ab7f125a34157ba8c","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"23cdff40-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/5d56a1c3-aca6-41d0-aa83-5617be8e5775/signaling 200 12ms","method":"POST","requestID":"23cdff40-442b-11ef-8685-a1e9f27e6f28","responseTime":12,"status":200,"url":"/devices/5d56a1c3-aca6-41d0-aa83-5617be8e5775/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c7984dd8-ae3f-4e5b-b7cf-d2b90524f9f3"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"d568a9052a7ea78833dddd8105a83b0f"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F093e6dd8-698b-4605-afea-976ca644d081","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F093e6dd8-698b-4605-afea-976ca644d081","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:52.385310333Z"}]},"request_id":"2aed759e-b961-421c-a681-3fa539042be7","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213754.6896946} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c7984dd8-ae3f-4e5b-b7cf-d2b90524f9f3"},"level":"info","message":"Building connection plan","requestID":"d568a9052a7ea78833dddd8105a83b0f"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"019a83b0-730d-43eb-9ef4-3bb4447f1532"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"c2a511f1-695b-40f0-a136-eb4ae22ac8ed"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"d19acfc2-3526-4d3d-b1a7-4c121cc7a1ae"}]},"level":"info","message":"Built pairwise service configurations","requestID":"d568a9052a7ea78833dddd8105a83b0f"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/5d56a1c3-aca6-41d0-aa83-5617be8e5775"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/093e6dd8-698b-4605-afea-976ca644d081"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"d568a9052a7ea78833dddd8105a83b0f"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e4d26f5025e8168ab7f125a34157ba8c","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"23d07040-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e4d26f5025e8168ab7f125a34157ba8c"} device-1 | {"level":"info","message":"GET /devices/093e6dd8-698b-4605-afea-976ca644d081? 200 15ms","method":"GET","requestID":"e4d26f5025e8168ab7f125a34157ba8c","responseTime":15,"status":200,"url":"/devices/093e6dd8-698b-4605-afea-976ca644d081?"} gateway-1 | {"time_local":"17/Jul/2024:10:55:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/093e6dd8-698b-4605-afea-976ca644d081? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e4d26f5025e8168ab7f125a34157ba8c"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":806,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:54Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":806,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.222856,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:54Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"23d07040-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213754,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc1NH0.fkywz6QzYYTfoAAvaDsgJjd9Qal3ObWsbbLK3AE8szQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"23d07040-442b-11ef-8685-a1e9f27e6f28","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc1NH0.fkywz6QzYYTfoAAvaDsgJjd9Qal3ObWsbbLK3AE8szQ","level":"info","message":"auth send jwt","requestID":"15382e6f0082095c64835de43206e018"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"15382e6f0082095c64835de43206e018","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"15382e6f0082095c64835de43206e018"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":807,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:54Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":807,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.894442,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5d56a1c3-aca6-41d0-aa83-5617be8e5775","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"15382e6f0082095c64835de43206e018","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/5d56a1c3-aca6-41d0-aa83-5617be8e5775","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213754,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc1NH0.fkywz6QzYYTfoAAvaDsgJjd9Qal3ObWsbbLK3AE8szQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"15382e6f0082095c64835de43206e018","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"d6c17bbc-aafd-48ab-93fb-f6a235cc8eb2","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213754.7080967} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"424a6cb1-3924-48e8-b044-ce6e1920239d","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213754.708395} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"23d07040-442b-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d56a1c3-aca6-41d0-aa83-5617be8e5775","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d56a1c3-aca6-41d0-aa83-5617be8e5775","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:52.438032586Z"}]},"request_id":"e7d429a6-0be8-4e79-b288-3528c318f65f","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213754.7125473} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"15382e6f0082095c64835de43206e018","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"23d07040-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"23d07040-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/f6666881-4463-4832-83eb-3cfc2e8a3b33'","requestID":"23d07040-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/f6666881-4463-4832-83eb-3cfc2e8a3b33'","requestID":"23d07040-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"23d07040-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 32ms","method":"POST","requestID":"23d07040-442b-11ef-8685-a1e9f27e6f28","responseTime":32,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"15382e6f0082095c64835de43206e018"} device-1 | {"level":"info","message":"GET /devices/5d56a1c3-aca6-41d0-aa83-5617be8e5775? 200 22ms","method":"GET","requestID":"15382e6f0082095c64835de43206e018","responseTime":22,"status":200,"url":"/devices/5d56a1c3-aca6-41d0-aa83-5617be8e5775?"} gateway-1 | {"time_local":"17/Jul/2024:10:55:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/5d56a1c3-aca6-41d0-aa83-5617be8e5775? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.029","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"15382e6f0082095c64835de43206e018"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"23d07040-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/f6666881-4463-4832-83eb-3cfc2e8a3b33","device":"5d56a1c3-aca6-41d0-aa83-5617be8e5775","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":false} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/f6666881-4463-4832-83eb-3cfc2e8a3b33","device":"093e6dd8-698b-4605-afea-976ca644d081","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":true} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c7984dd8-ae3f-4e5b-b7cf-d2b90524f9f3"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"d568a9052a7ea78833dddd8105a83b0f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"23d970f0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":808,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:54Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F093e6dd8-698b-4605-afea-976ca644d081","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a72209a4-cb9a-4809-af4e-c74226c5357d","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213754.7558062} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":808,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.058783,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/093e6dd8-698b-4605-afea-976ca644d081","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"23d970f0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/093e6dd8-698b-4605-afea-976ca644d081","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"23d970f0-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"23d970f0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/093e6dd8-698b-4605-afea-976ca644d081/signaling 200 8ms","method":"POST","requestID":"23d970f0-442b-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/devices/093e6dd8-698b-4605-afea-976ca644d081/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"23dad080-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":809,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:54Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d56a1c3-aca6-41d0-aa83-5617be8e5775","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0b6e2c0d-3486-49dd-a412-fd631e0f71f5","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213754.7646115} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":809,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.848044,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5d56a1c3-aca6-41d0-aa83-5617be8e5775","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"23dad080-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5d56a1c3-aca6-41d0-aa83-5617be8e5775","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"23dad080-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"23dad080-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/5d56a1c3-aca6-41d0-aa83-5617be8e5775/signaling 200 10ms","method":"POST","requestID":"23dad080-442b-11ef-8685-a1e9f27e6f28","responseTime":10,"status":200,"url":"/devices/5d56a1c3-aca6-41d0-aa83-5617be8e5775/signaling"} device-1 | {"device":"5d56a1c3-aca6-41d0-aa83-5617be8e5775","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"device":"093e6dd8-698b-4605-afea-976ca644d081","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"093e6dd8-698b-4605-afea-976ca644d081","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"canTrickle":true},"device":"5d56a1c3-aca6-41d0-aa83-5617be8e5775","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 2208190177321089770 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:Ya1U\r\na=ice-pwd:dXK/t5JjP5lKWiZanI6rjbKO\r\na=ice-options:trickle\r\na=fingerprint:sha-256 B4:6C:87:D3:5F:DE:EA:E2:CC:58:CC:C2:9B:05:AB:83:73:00:02:0B:54:60:FF:81:74:85:6C:04:D3:57:0E:14\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"093e6dd8-698b-4605-afea-976ca644d081","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 1313670997277160833 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:VnL5\r\na=ice-pwd:J5AkhbCau3+khmdqfGSDHiYM\r\na=ice-options:trickle\r\na=fingerprint:sha-256 E5:5F:EB:85:62:8F:83:A3:DD:97:57:7C:22:E3:19:7E:8A:69:C8:95:BE:D0:02:7F:E4:EC:6B:95:D9:41:55:90\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"5d56a1c3-aca6-41d0-aa83-5617be8e5775","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:3844850538 1 udp 2113937151 0617650d-5e59-4fda-b84b-6c4cd591e350.local 39534 typ host generation 0 ufrag VnL5 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"5d56a1c3-aca6-41d0-aa83-5617be8e5775","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1979736697 1 udp 1677729535 141.24.211.56 39534 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag VnL5 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"5d56a1c3-aca6-41d0-aa83-5617be8e5775","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/5d56a1c3-aca6-41d0-aa83-5617be8e5775'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/5d56a1c3-aca6-41d0-aa83-5617be8e5775'"} device-1 | {"content":{"candidate":"candidate:3610583846 1 udp 2113937151 ef227c04-9687-4f0e-880b-97735798c493.local 56360 typ host generation 0 ufrag Ya1U network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"093e6dd8-698b-4605-afea-976ca644d081","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1394100569 1 udp 1677729535 141.24.211.56 56360 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag Ya1U network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"093e6dd8-698b-4605-afea-976ca644d081","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/093e6dd8-698b-4605-afea-976ca644d081'"} device-1 | {"device":"093e6dd8-698b-4605-afea-976ca644d081","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"093e6dd8-698b-4605-afea-976ca644d081","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/f6666881-4463-4832-83eb-3cfc2e8a3b33' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f6666881-4463-4832-83eb-3cfc2e8a3b33","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"5d56a1c3-aca6-41d0-aa83-5617be8e5775","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"5d56a1c3-aca6-41d0-aa83-5617be8e5775","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"41f7ffee64a9aa2a5dca51b9e9c141cd","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"41f7ffee64a9aa2a5dca51b9e9c141cd","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/5d56a1c3-aca6-41d0-aa83-5617be8e5775"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/093e6dd8-698b-4605-afea-976ca644d081"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/f6666881-4463-4832-83eb-3cfc2e8a3b33"}}},"level":"info","message":"received a callback","requestID":"41f7ffee64a9aa2a5dca51b9e9c141cd"} device-1 | {"device":"093e6dd8-698b-4605-afea-976ca644d081","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"5d56a1c3-aca6-41d0-aa83-5617be8e5775","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 5ms","method":"POST","requestID":"41f7ffee64a9aa2a5dca51b9e9c141cd","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:55:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.008","http_referrer":"","http_user_agent":"node-fetch","requestID":"41f7ffee64a9aa2a5dca51b9e9c141cd"} device-1 | {"device":"5d56a1c3-aca6-41d0-aa83-5617be8e5775","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"f6666881-4463-4832-83eb-3cfc2e8a3b33","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"f6666881-4463-4832-83eb-3cfc2e8a3b33","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/f6666881-4463-4832-83eb-3cfc2e8a3b33' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f6666881-4463-4832-83eb-3cfc2e8a3b33","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e53ab4aae565deeb576d1f6c79a08b42","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"e53ab4aae565deeb576d1f6c79a08b42","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/5d56a1c3-aca6-41d0-aa83-5617be8e5775"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/093e6dd8-698b-4605-afea-976ca644d081"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/f6666881-4463-4832-83eb-3cfc2e8a3b33"}}},"level":"info","message":"received a callback","requestID":"e53ab4aae565deeb576d1f6c79a08b42"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"23e5cd00-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":810,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:54Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff6666881-4463-4832-83eb-3cfc2e8a3b33","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b325e54f-2dd1-4226-a14b-3816478be8ac","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213754.8360417} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":810,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.198392,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/f6666881-4463-4832-83eb-3cfc2e8a3b33","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"23e5cd00-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/f6666881-4463-4832-83eb-3cfc2e8a3b33","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"23e5cd00-442b-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"23e5cd00-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /peerconnections/f6666881-4463-4832-83eb-3cfc2e8a3b33 200 7ms","method":"GET","requestID":"23e5cd00-442b-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/peerconnections/f6666881-4463-4832-83eb-3cfc2e8a3b33"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 31ms","method":"POST","requestID":"e53ab4aae565deeb576d1f6c79a08b42","responseTime":31,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:55:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.033","http_referrer":"","http_user_agent":"node-fetch","requestID":"e53ab4aae565deeb576d1f6c79a08b42"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"23e9ebb0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":811,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:54Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d56a1c3-aca6-41d0-aa83-5617be8e5775","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8cc67000-e374-4f66-9215-200e7758e9f9","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213754.8630948} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":811,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.191087,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5d56a1c3-aca6-41d0-aa83-5617be8e5775","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"23e9ebb0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5d56a1c3-aca6-41d0-aa83-5617be8e5775","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"23e9ebb0-442b-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"23e9ebb0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/5d56a1c3-aca6-41d0-aa83-5617be8e5775/signaling 200 7ms","method":"POST","requestID":"23e9ebb0-442b-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/devices/5d56a1c3-aca6-41d0-aa83-5617be8e5775/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"23eb4b40-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":812,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:54Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F093e6dd8-698b-4605-afea-976ca644d081","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5109ed01-4edd-4bf4-b19f-554f2377bcef","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213754.8720448} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":812,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.117819,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/093e6dd8-698b-4605-afea-976ca644d081","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"23eb4b40-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/093e6dd8-698b-4605-afea-976ca644d081","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"23eb4b40-442b-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"23eb4b40-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/093e6dd8-698b-4605-afea-976ca644d081/signaling 200 7ms","method":"POST","requestID":"23eb4b40-442b-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/devices/093e6dd8-698b-4605-afea-976ca644d081/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc1NH0.fkywz6QzYYTfoAAvaDsgJjd9Qal3ObWsbbLK3AE8szQ","level":"info","message":"auth send jwt","requestID":"ad4c982faacdeefdf544fa8a172d95c6"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"ad4c982faacdeefdf544fa8a172d95c6","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/c7984dd8-ae3f-4e5b-b7cf-d2b90524f9f3","requestID":"ad4c982faacdeefdf544fa8a172d95c6"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":813,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:54Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":813,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.682053,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/c7984dd8-ae3f-4e5b-b7cf-d2b90524f9f3","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"ad4c982faacdeefdf544fa8a172d95c6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:http://localhost/experiments/c7984dd8-ae3f-4e5b-b7cf-d2b90524f9f3","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213754,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc1NH0.fkywz6QzYYTfoAAvaDsgJjd9Qal3ObWsbbLK3AE8szQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ad4c982faacdeefdf544fa8a172d95c6","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/c7984dd8-ae3f-4e5b-b7cf-d2b90524f9f3","requestID":"ad4c982faacdeefdf544fa8a172d95c6"} gateway-1 | {"time_local":"17/Jul/2024:10:55:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/c7984dd8-ae3f-4e5b-b7cf-d2b90524f9f3 HTTP/1.1","status": "200","body_bytes_sent":"880","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ad4c982faacdeefdf544fa8a172d95c6"} experiment-1 | {"level":"info","message":"GET /experiments/c7984dd8-ae3f-4e5b-b7cf-d2b90524f9f3 200 13ms","method":"GET","requestID":"ad4c982faacdeefdf544fa8a172d95c6","responseTime":13,"status":200,"url":"/experiments/c7984dd8-ae3f-4e5b-b7cf-d2b90524f9f3"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc1NH0.fkywz6QzYYTfoAAvaDsgJjd9Qal3ObWsbbLK3AE8szQ","level":"info","message":"auth send jwt","requestID":"da7d12187a65b5462a34da55feac2ba7"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"da7d12187a65b5462a34da55feac2ba7","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/c7984dd8-ae3f-4e5b-b7cf-d2b90524f9f3","requestID":"da7d12187a65b5462a34da55feac2ba7"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":814,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:54Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":814,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.748105,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:54Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/c7984dd8-ae3f-4e5b-b7cf-d2b90524f9f3","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"da7d12187a65b5462a34da55feac2ba7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:http://localhost/experiments/c7984dd8-ae3f-4e5b-b7cf-d2b90524f9f3","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213754,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc1NH0.fkywz6QzYYTfoAAvaDsgJjd9Qal3ObWsbbLK3AE8szQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"da7d12187a65b5462a34da55feac2ba7","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c7984dd8-ae3f-4e5b-b7cf-d2b90524f9f3"},"level":"info","message":"Attempting to finish experiment","requestID":"da7d12187a65b5462a34da55feac2ba7"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"23f5ab80-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":815,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:54Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":815,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.695141,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:54Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/f6666881-4463-4832-83eb-3cfc2e8a3b33","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"23f5ab80-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"peerconnection:http://localhost/peerconnections/f6666881-4463-4832-83eb-3cfc2e8a3b33","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213754,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc1NH0.fkywz6QzYYTfoAAvaDsgJjd9Qal3ObWsbbLK3AE8szQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"23f5ab80-442b-11ef-8685-a1e9f27e6f28","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/f6666881-4463-4832-83eb-3cfc2e8a3b33","device":"5d56a1c3-aca6-41d0-aa83-5617be8e5775","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/f6666881-4463-4832-83eb-3cfc2e8a3b33","device":"093e6dd8-698b-4605-afea-976ca644d081","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/f6666881-4463-4832-83eb-3cfc2e8a3b33' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/f6666881-4463-4832-83eb-3cfc2e8a3b33' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f6666881-4463-4832-83eb-3cfc2e8a3b33","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f0d7b5e1a2ab4abdf16b2064bf3177e7","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"f0d7b5e1a2ab4abdf16b2064bf3177e7","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff6666881-4463-4832-83eb-3cfc2e8a3b33': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff6666881-4463-4832-83eb-3cfc2e8a3b33","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]},"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":null},"raw_response":{},"request_id":"d056d3c0-9597-440f-83e3-e2f6a997f7ac","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213754.9497104} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"19ae236d-c4ed-489c-8771-c3abd2d7f4c4","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213754.9499197} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"23f5ab80-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ded2ab64ff48f5edebd1d64b6cb47dfb","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/5d56a1c3-aca6-41d0-aa83-5617be8e5775"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/093e6dd8-698b-4605-afea-976ca644d081"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/f6666881-4463-4832-83eb-3cfc2e8a3b33"}}},"level":"info","message":"received a callback","requestID":"f0d7b5e1a2ab4abdf16b2064bf3177e7"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/5d56a1c3-aca6-41d0-aa83-5617be8e5775"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/093e6dd8-698b-4605-afea-976ca644d081"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/f6666881-4463-4832-83eb-3cfc2e8a3b33"}}},"level":"info","message":"received a callback","requestID":"ded2ab64ff48f5edebd1d64b6cb47dfb"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"ded2ab64ff48f5edebd1d64b6cb47dfb","responseTime":1,"status":200,"url":"/auth"} device-1 | {"data":{"peerconnection":"f6666881-4463-4832-83eb-3cfc2e8a3b33","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"23f5ab80-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"DELETE /peerconnections/f6666881-4463-4832-83eb-3cfc2e8a3b33 204 33ms","method":"DELETE","requestID":"23f5ab80-442b-11ef-8685-a1e9f27e6f28","responseTime":33,"status":204,"url":"/peerconnections/f6666881-4463-4832-83eb-3cfc2e8a3b33"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c7984dd8-ae3f-4e5b-b7cf-d2b90524f9f3"},"level":"info","message":"Successfully finished experiment","requestID":"da7d12187a65b5462a34da55feac2ba7"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"23fe3700-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":816,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:54Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d56a1c3-aca6-41d0-aa83-5617be8e5775","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b5c95d72-f0e2-403f-a07f-2cc4241c9491","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213754.997425} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":816,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.870813,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5d56a1c3-aca6-41d0-aa83-5617be8e5775","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"23fe3700-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5d56a1c3-aca6-41d0-aa83-5617be8e5775","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"23fe3700-442b-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"23fe3700-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/5d56a1c3-aca6-41d0-aa83-5617be8e5775/signaling 200 10ms","method":"POST","requestID":"23fe3700-442b-11ef-8685-a1e9f27e6f28","responseTime":10,"status":200,"url":"/devices/5d56a1c3-aca6-41d0-aa83-5617be8e5775/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"240032d0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc7984dd8-ae3f-4e5b-b7cf-d2b90524f9f3': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc7984dd8-ae3f-4e5b-b7cf-d2b90524f9f3","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]},"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":null},"raw_response":{},"request_id":"fe36ad11-08f8-4ee0-bb55-88d18092495d","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213755.0055373} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fa4f34fb-b4be-4ad3-8d63-6547d7d1879e","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213755.0056965} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"da7d12187a65b5462a34da55feac2ba7","responseTime":16,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":817,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:55Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F093e6dd8-698b-4605-afea-976ca644d081","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"760da269-1f82-4537-b15a-d2f266365be6","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213755.0101774} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":817,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.458168,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/093e6dd8-698b-4605-afea-976ca644d081","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"240032d0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/093e6dd8-698b-4605-afea-976ca644d081","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"240032d0-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"240032d0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/093e6dd8-698b-4605-afea-976ca644d081/signaling 200 9ms","method":"POST","requestID":"240032d0-442b-11ef-8685-a1e9f27e6f28","responseTime":9,"status":200,"url":"/devices/093e6dd8-698b-4605-afea-976ca644d081/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/c7984dd8-ae3f-4e5b-b7cf-d2b90524f9f3","requestID":"da7d12187a65b5462a34da55feac2ba7"} gateway-1 | {"time_local":"17/Jul/2024:10:55:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/c7984dd8-ae3f-4e5b-b7cf-d2b90524f9f3 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.140","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"da7d12187a65b5462a34da55feac2ba7"} experiment-1 | {"level":"info","message":"DELETE /experiments/c7984dd8-ae3f-4e5b-b7cf-d2b90524f9f3 204 137ms","method":"DELETE","requestID":"da7d12187a65b5462a34da55feac2ba7","responseTime":137,"status":204,"url":"/experiments/c7984dd8-ae3f-4e5b-b7cf-d2b90524f9f3"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 113ms","method":"POST","requestID":"f0d7b5e1a2ab4abdf16b2064bf3177e7","responseTime":113,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:55:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.116","http_referrer":"","http_user_agent":"node-fetch","requestID":"f0d7b5e1a2ab4abdf16b2064bf3177e7"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 112ms","method":"POST","requestID":"ded2ab64ff48f5edebd1d64b6cb47dfb","responseTime":112,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:55:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.116","http_referrer":"","http_user_agent":"node-fetch","requestID":"ded2ab64ff48f5edebd1d64b6cb47dfb"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc1NX0.WwQUV-FpDZrRhgaGTsynN-emJa46b2gSqs2V8-weAoo","level":"info","message":"auth send jwt","requestID":"697554439d6b5347adb9810f83ddb5a6"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"697554439d6b5347adb9810f83ddb5a6","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"697554439d6b5347adb9810f83ddb5a6"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/093e6dd8-698b-4605-afea-976ca644d081' closed"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":818,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:55Z"} gateway-1 | {"time_local":"17/Jul/2024:10:55:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2647","request_time":"0.668","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"705ba747a68b157846e84bb273aad5a5"} gateway-1 | {"time_local":"17/Jul/2024:10:55:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2647","request_time":"0.654","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"ac354364ee26e3c466d8ee0036db0c3c"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":818,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.917071,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:55Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"697554439d6b5347adb9810f83ddb5a6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213755,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc1NX0.WwQUV-FpDZrRhgaGTsynN-emJa46b2gSqs2V8-weAoo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"697554439d6b5347adb9810f83ddb5a6","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/5d56a1c3-aca6-41d0-aa83-5617be8e5775' closed"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc2fa08f7-b66f-4373-bba3-fbf498ac70e8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"9694a6b7-64b9-429d-91c5-e81a0393accc","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213755.0950444} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"697554439d6b5347adb9810f83ddb5a6","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c1373666-331c-4350-8d85-7c47e39afb28","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213755.0995998} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"697554439d6b5347adb9810f83ddb5a6","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc2fa08f7-b66f-4373-bba3-fbf498ac70e8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"956723e4-8098-4ceb-90cf-a122e1fbccb1","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213755.1112504} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fb327b1c-63da-4797-90e2-1d357c36569a","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213755.111366} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"697554439d6b5347adb9810f83ddb5a6","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc2fa08f7-b66f-4373-bba3-fbf498ac70e8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc2fa08f7-b66f-4373-bba3-fbf498ac70e8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:55.111222967Z"}]},"request_id":"90014950-cd6c-4a43-b0b8-2653f17c8b63","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213755.1154885} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"697554439d6b5347adb9810f83ddb5a6","responseTime":2,"status":200,"url":"/relations/query"} gateway-1 | {"time_local":"17/Jul/2024:10:55:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"315","request_time":"0.054","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"697554439d6b5347adb9810f83ddb5a6"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"697554439d6b5347adb9810f83ddb5a6"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"697554439d6b5347adb9810f83ddb5a6","responseTime":47,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc1NX0.WwQUV-FpDZrRhgaGTsynN-emJa46b2gSqs2V8-weAoo","level":"info","message":"auth send jwt","requestID":"c518aa23b32714e42637784299fcc2b0"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c518aa23b32714e42637784299fcc2b0","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"c518aa23b32714e42637784299fcc2b0"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":819,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:55Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":819,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.733306,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:55Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"c518aa23b32714e42637784299fcc2b0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213755,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc1NX0.WwQUV-FpDZrRhgaGTsynN-emJa46b2gSqs2V8-weAoo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c518aa23b32714e42637784299fcc2b0","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F01a7351e-3f56-4196-ba3b-bdba3980a3ad","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"cff79399-713d-4738-8459-79e46f546e79","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213755.1411254} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c518aa23b32714e42637784299fcc2b0","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"648764d6-ca97-40f8-9de4-aa653faf5689","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213755.1452818} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"c518aa23b32714e42637784299fcc2b0","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F01a7351e-3f56-4196-ba3b-bdba3980a3ad","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"7b47006e-7ab1-46e7-bbe8-080e339ab58f","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213755.1552463} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e47e130b-0e96-4922-bc9f-946e8f49eb66","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213755.155373} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"c518aa23b32714e42637784299fcc2b0","responseTime":12,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F01a7351e-3f56-4196-ba3b-bdba3980a3ad","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F01a7351e-3f56-4196-ba3b-bdba3980a3ad","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:55.155222432Z"}]},"request_id":"fe046618-721d-4c75-882f-82cd33291a84","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213755.1587863} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"c518aa23b32714e42637784299fcc2b0","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"c518aa23b32714e42637784299fcc2b0"} gateway-1 | {"time_local":"17/Jul/2024:10:55:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"308","request_time":"0.041","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c518aa23b32714e42637784299fcc2b0"} device-1 | {"level":"info","message":"POST /devices? 201 37ms","method":"POST","requestID":"c518aa23b32714e42637784299fcc2b0","responseTime":37,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"22f7c06608602f3b88b540c09994ae74","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"22f7c06608602f3b88b540c09994ae74","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"17/Jul/2024:10:55:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/01a7351e-3f56-4196-ba3b-bdba3980a3ad/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"22f7c06608602f3b88b540c09994ae74"} device-1 | {"level":"info","message":"OPTIONS /devices/01a7351e-3f56-4196-ba3b-bdba3980a3ad/websocket 200 1ms","method":"OPTIONS","requestID":"22f7c06608602f3b88b540c09994ae74","responseTime":1,"status":200,"url":"/devices/01a7351e-3f56-4196-ba3b-bdba3980a3ad/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc1N30.fZxN2NrMSCigZi20RnXOnmhFs52XKwFg_STAk0Tovb0","level":"info","message":"auth send jwt","requestID":"14c48221722378fd137fbc88e22c4420"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"14c48221722378fd137fbc88e22c4420","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"14c48221722378fd137fbc88e22c4420"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":820,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:57Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":820,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.238303,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:57Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/01a7351e-3f56-4196-ba3b-bdba3980a3ad","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"14c48221722378fd137fbc88e22c4420","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/01a7351e-3f56-4196-ba3b-bdba3980a3ad","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213757,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc1N30.fZxN2NrMSCigZi20RnXOnmhFs52XKwFg_STAk0Tovb0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"14c48221722378fd137fbc88e22c4420","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"14c48221722378fd137fbc88e22c4420"} device-1 | {"level":"info","message":"POST /devices/01a7351e-3f56-4196-ba3b-bdba3980a3ad/websocket 200 21ms","method":"POST","requestID":"14c48221722378fd137fbc88e22c4420","responseTime":21,"status":200,"url":"/devices/01a7351e-3f56-4196-ba3b-bdba3980a3ad/websocket"} gateway-1 | {"time_local":"17/Jul/2024:10:55:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/01a7351e-3f56-4196-ba3b-bdba3980a3ad/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.027","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"14c48221722378fd137fbc88e22c4420"} device-1 | {"level":"info","message":"device 'http://localhost/devices/01a7351e-3f56-4196-ba3b-bdba3980a3ad' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc1N30.fZxN2NrMSCigZi20RnXOnmhFs52XKwFg_STAk0Tovb0","level":"info","message":"auth send jwt","requestID":"4f6773048018085f32412259425e639b"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"4f6773048018085f32412259425e639b","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4f6773048018085f32412259425e639b"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":821,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:57Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":821,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.159656,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/01a7351e-3f56-4196-ba3b-bdba3980a3ad","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"4f6773048018085f32412259425e639b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/01a7351e-3f56-4196-ba3b-bdba3980a3ad","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213757,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc1N30.fZxN2NrMSCigZi20RnXOnmhFs52XKwFg_STAk0Tovb0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4f6773048018085f32412259425e639b","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F01a7351e-3f56-4196-ba3b-bdba3980a3ad","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F01a7351e-3f56-4196-ba3b-bdba3980a3ad","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:55.155222432Z"}]},"request_id":"333a445b-9cf5-4689-8e88-966f8c360889","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213757.2187886} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4f6773048018085f32412259425e639b","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4f6773048018085f32412259425e639b"} gateway-1 | {"time_local":"17/Jul/2024:10:55:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/01a7351e-3f56-4196-ba3b-bdba3980a3ad? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4f6773048018085f32412259425e639b"} device-1 | {"level":"info","message":"GET /devices/01a7351e-3f56-4196-ba3b-bdba3980a3ad? 200 16ms","method":"GET","requestID":"4f6773048018085f32412259425e639b","responseTime":16,"status":200,"url":"/devices/01a7351e-3f56-4196-ba3b-bdba3980a3ad?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc1N30.fZxN2NrMSCigZi20RnXOnmhFs52XKwFg_STAk0Tovb0","level":"info","message":"auth send jwt","requestID":"ae1cec80b568a674f23e9d7a10361b7d"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"ae1cec80b568a674f23e9d7a10361b7d","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"ae1cec80b568a674f23e9d7a10361b7d"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":822,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:57Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":822,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.230162,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:57Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"ae1cec80b568a674f23e9d7a10361b7d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213757,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc1N30.fZxN2NrMSCigZi20RnXOnmhFs52XKwFg_STAk0Tovb0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ae1cec80b568a674f23e9d7a10361b7d","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/232be412-ec66-43d5-a0ba-859c26e67ff4"},"level":"info","message":"Attempting to run experiment","requestID":"ae1cec80b568a674f23e9d7a10361b7d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/232be412-ec66-43d5-a0ba-859c26e67ff4"},"level":"info","message":"Attempting to book experiment","requestID":"ae1cec80b568a674f23e9d7a10361b7d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/232be412-ec66-43d5-a0ba-859c26e67ff4"},"level":"info","message":"Successfully booked experiment","requestID":"ae1cec80b568a674f23e9d7a10361b7d"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2559cf60-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"255a1d80-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":823,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:57Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":823,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.599085,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:57Z"} authorization-1 | {"client_addr":"127.0.0.1:35236","level":"info","msg":"Received request.","req_id":824,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c2fa08f7-b66f-4373-bba3-fbf498ac70e8","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"2559cf60-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/c2fa08f7-b66f-4373-bba3-fbf498ac70e8","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213757,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc1N30.fZxN2NrMSCigZi20RnXOnmhFs52XKwFg_STAk0Tovb0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2559cf60-442b-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:35236","level":"info","msg":"Sent response.","req_id":824,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.750421,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/01a7351e-3f56-4196-ba3b-bdba3980a3ad","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"255a1d80-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/01a7351e-3f56-4196-ba3b-bdba3980a3ad","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213757,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc1N30.fZxN2NrMSCigZi20RnXOnmhFs52XKwFg_STAk0Tovb0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"255a1d80-442b-11ef-8685-a1e9f27e6f28","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc2fa08f7-b66f-4373-bba3-fbf498ac70e8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc2fa08f7-b66f-4373-bba3-fbf498ac70e8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:55.111222967Z"}]},"request_id":"e7bc453b-131f-4a97-972d-a7501a493a15","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213757.280743} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2559cf60-442b-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F01a7351e-3f56-4196-ba3b-bdba3980a3ad","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F01a7351e-3f56-4196-ba3b-bdba3980a3ad","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:55.155222432Z"}]},"request_id":"a38a9c0d-aed1-4bfa-b49d-5dc147d80727","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213757.282007} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"255a1d80-442b-11ef-8685-a1e9f27e6f28","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2559cf60-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/c2fa08f7-b66f-4373-bba3-fbf498ac70e8? 200 17ms","method":"GET","requestID":"2559cf60-442b-11ef-8685-a1e9f27e6f28","responseTime":17,"status":200,"url":"/devices/c2fa08f7-b66f-4373-bba3-fbf498ac70e8?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"255a1d80-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/01a7351e-3f56-4196-ba3b-bdba3980a3ad? 200 16ms","method":"GET","requestID":"255a1d80-442b-11ef-8685-a1e9f27e6f28","responseTime":16,"status":200,"url":"/devices/01a7351e-3f56-4196-ba3b-bdba3980a3ad?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/232be412-ec66-43d5-a0ba-859c26e67ff4"},"level":"info","message":"Setting up experiment","requestID":"ae1cec80b568a674f23e9d7a10361b7d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/232be412-ec66-43d5-a0ba-859c26e67ff4"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"ae1cec80b568a674f23e9d7a10361b7d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/232be412-ec66-43d5-a0ba-859c26e67ff4"},"level":"info","message":"Successfully locked booking for experiment","requestID":"ae1cec80b568a674f23e9d7a10361b7d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/232be412-ec66-43d5-a0ba-859c26e67ff4"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"ae1cec80b568a674f23e9d7a10361b7d"} device-1 | {"level":"info","message":"postDevicesByDeviceId called","requestID":"255f9bc0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":825,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:57Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":825,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.658111,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:57Z"} authorization-1 | {"action":"instantiate","level":"info","message":"opa_check","object":"device:http://localhost/devices/c2fa08f7-b66f-4373-bba3-fbf498ac70e8","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"255f9bc0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/c2fa08f7-b66f-4373-bba3-fbf498ac70e8","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213757,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc1N30.fZxN2NrMSCigZi20RnXOnmhFs52XKwFg_STAk0Tovb0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"255f9bc0-442b-11ef-8685-a1e9f27e6f28","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9322a868-184e-4243-930d-b4d3e64086c7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"e9dfd5e6-17e9-4a6f-bfa0-aeafbe348990","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213757.3358963} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f4258c1e-8db8-47bd-8b33-1f777b6356cf","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213757.336072} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"255f9bc0-442b-11ef-8685-a1e9f27e6f28","responseTime":12,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"registering changed-callback for device 'http://localhost/devices/9322a868-184e-4243-930d-b4d3e64086c7' to 'http://localhost/callbacks/experiment'","requestID":"255f9bc0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postDevicesByDeviceId succeeded","requestID":"255f9bc0-442b-11ef-8685-a1e9f27e6f28"} authentication-1 | {"level":"info","message":"POST /token 201 27ms","method":"POST","requestID":"25658f30-442b-11ef-bdbc-9b9633e6f51a","responseTime":27,"status":201,"url":"/token"} device-1 | {"level":"info","message":"POST /devices/c2fa08f7-b66f-4373-bba3-fbf498ac70e8?changedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 73ms","method":"POST","requestID":"255f9bc0-442b-11ef-8685-a1e9f27e6f28","responseTime":73,"status":201,"url":"/devices/c2fa08f7-b66f-4373-bba3-fbf498ac70e8?changedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/232be412-ec66-43d5-a0ba-859c26e67ff4"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"ae1cec80b568a674f23e9d7a10361b7d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/232be412-ec66-43d5-a0ba-859c26e67ff4"},"level":"info","message":"Attempting to update booking for experiment","requestID":"ae1cec80b568a674f23e9d7a10361b7d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/232be412-ec66-43d5-a0ba-859c26e67ff4"},"level":"info","message":"Successfully updated booking for experiment","requestID":"ae1cec80b568a674f23e9d7a10361b7d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/232be412-ec66-43d5-a0ba-859c26e67ff4"},"level":"info","message":"Successfully set up experiment","requestID":"ae1cec80b568a674f23e9d7a10361b7d"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2572fcb0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"25734ad0-442b-11ef-8685-a1e9f27e6f28"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/232be412-ec66-43d5-a0ba-859c26e67ff4"},"level":"info","message":"Successfully running experiment","requestID":"ae1cec80b568a674f23e9d7a10361b7d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"257398f0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":826,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:57Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":826,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.893595,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:57Z"} authorization-1 | {"client_addr":"127.0.0.1:35236","level":"info","msg":"Received request.","req_id":827,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9322a868-184e-4243-930d-b4d3e64086c7","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"2572fcb0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/9322a868-184e-4243-930d-b4d3e64086c7","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213757,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc1N30.fZxN2NrMSCigZi20RnXOnmhFs52XKwFg_STAk0Tovb0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"2572fcb0-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:35236","level":"info","msg":"Sent response.","req_id":827,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.850414,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/01a7351e-3f56-4196-ba3b-bdba3980a3ad","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"25734ad0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/01a7351e-3f56-4196-ba3b-bdba3980a3ad","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213757,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc1N30.fZxN2NrMSCigZi20RnXOnmhFs52XKwFg_STAk0Tovb0"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"25734ad0-442b-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":828,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:57Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9322a868-184e-4243-930d-b4d3e64086c7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6a33cd22-1a43-4256-a953-ca6494a78986","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213757.4488578} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9322a868-184e-4243-930d-b4d3e64086c7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9322a868-184e-4243-930d-b4d3e64086c7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:57.335865266Z"}]},"request_id":"221760e5-4635-4517-af29-0cc85893a19e","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213757.4499748} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":828,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.217255,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9322a868-184e-4243-930d-b4d3e64086c7","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"257398f0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9322a868-184e-4243-930d-b4d3e64086c7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"257398f0-442b-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"2572fcb0-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F01a7351e-3f56-4196-ba3b-bdba3980a3ad","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F01a7351e-3f56-4196-ba3b-bdba3980a3ad","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:55.155222432Z"}]},"request_id":"4eb309d3-d6ca-4896-84cd-f1746f7316de","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213757.4514945} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"25734ad0-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F232be412-ec66-43d5-a0ba-859c26e67ff4#owner@http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F232be412-ec66-43d5-a0ba-859c26e67ff4","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"3582754d-ba8c-420c-83a3-ba268a5fee6c","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213757.458199} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"01ef22b8-5494-4b55-99eb-87bf63c1684f","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213757.4584} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"ae1cec80b568a674f23e9d7a10361b7d","responseTime":20,"status":200,"url":"/relations/update"} device-1 | {"data":{"error":"MissingEntityError","message":"Could not find websocket connection for device 9322a868-184e-4243-930d-b4d3e64086c7","method":"POST","stack":"MissingEntityError: Could not find websocket connection for device 9322a868-184e-4243-930d-b4d3e64086c7\n at Object.postDevicesByDeviceIdSignaling (file:///usr/local/lib/node_modules/@crosslab/service-device/app/operations/devices/device/signaling/post.js:44:15)\n at async file:///usr/local/lib/node_modules/@crosslab/service-device/app/generated/routes.js:276:28","status":404,"url":"/devices/9322a868-184e-4243-930d-b4d3e64086c7/signaling"},"level":"error","message":"An error occurred during the handling of a request","requestID":"257398f0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/9322a868-184e-4243-930d-b4d3e64086c7/signaling 404 23ms","method":"POST","requestID":"257398f0-442b-11ef-8685-a1e9f27e6f28","responseTime":23,"status":404,"url":"/devices/9322a868-184e-4243-930d-b4d3e64086c7/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2572fcb0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/9322a868-184e-4243-930d-b4d3e64086c7? 200 27ms","method":"GET","requestID":"2572fcb0-442b-11ef-8685-a1e9f27e6f28","responseTime":27,"status":200,"url":"/devices/9322a868-184e-4243-930d-b4d3e64086c7?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"25734ad0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/01a7351e-3f56-4196-ba3b-bdba3980a3ad? 200 26ms","method":"GET","requestID":"25734ad0-442b-11ef-8685-a1e9f27e6f28","responseTime":26,"status":200,"url":"/devices/01a7351e-3f56-4196-ba3b-bdba3980a3ad?"} experiment-1 | {"data":{"response":{"body":{"error":"MissingEntityError","message":"Could not find websocket connection for device 9322a868-184e-4243-930d-b4d3e64086c7"},"status":404}},"level":"error","message":"Could not send status-update message","requestID":"ae1cec80b568a674f23e9d7a10361b7d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2577b7a0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":829,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:57Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/232be412-ec66-43d5-a0ba-859c26e67ff4","user":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"ae1cec80b568a674f23e9d7a10361b7d"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F01a7351e-3f56-4196-ba3b-bdba3980a3ad","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"be6ec3a4-1a31-438b-99c8-49e6d88e7bb5","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213757.471026} gateway-1 | {"time_local":"17/Jul/2024:10:55:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1107","request_time":"0.245","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ae1cec80b568a674f23e9d7a10361b7d"} experiment-1 | {"level":"info","message":"POST /experiments? 201 238ms","method":"POST","requestID":"ae1cec80b568a674f23e9d7a10361b7d","responseTime":238,"status":201,"url":"/experiments?"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":829,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.09722,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/01a7351e-3f56-4196-ba3b-bdba3980a3ad","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"2577b7a0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/01a7351e-3f56-4196-ba3b-bdba3980a3ad","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"2577b7a0-442b-11ef-8685-a1e9f27e6f28","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2577b7a0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/01a7351e-3f56-4196-ba3b-bdba3980a3ad/signaling 200 10ms","method":"POST","requestID":"2577b7a0-442b-11ef-8685-a1e9f27e6f28","responseTime":10,"status":200,"url":"/devices/01a7351e-3f56-4196-ba3b-bdba3980a3ad/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7ce5cb878811c26a6c99a5aa080e00bf","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"7ce5cb878811c26a6c99a5aa080e00bf","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"OPTIONS /devices/9322a868-184e-4243-930d-b4d3e64086c7/websocket 200 1ms","method":"OPTIONS","requestID":"7ce5cb878811c26a6c99a5aa080e00bf","responseTime":1,"status":200,"url":"/devices/9322a868-184e-4243-930d-b4d3e64086c7/websocket"} gateway-1 | {"time_local":"17/Jul/2024:10:55:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/9322a868-184e-4243-930d-b4d3e64086c7/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.004","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"7ce5cb878811c26a6c99a5aa080e00bf"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ilg3TWtlUUZaS0E3TW45MVJBYm10aEdJZS1wZkNmUHhUWlZFOUpBTTNPOG9SbjZYTWliQTR2YmtYMnRWZ2VWM29JOE84NUpoSTJoY1BIUVVpUnVJVGtBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc1OX0._JNpfP8wJnXScmRq79HSW9eU_EbVcD_4rl7P2nn7BwQ","level":"info","message":"auth send jwt","requestID":"f702d4d3c70cd196abe99fcf0fdd985f"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"f702d4d3c70cd196abe99fcf0fdd985f","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"f702d4d3c70cd196abe99fcf0fdd985f"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":830,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:59Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":830,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.165121,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:59Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9322a868-184e-4243-930d-b4d3e64086c7","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"f702d4d3c70cd196abe99fcf0fdd985f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/9322a868-184e-4243-930d-b4d3e64086c7","object_type":"device","payload":{"admin":true,"edgeToken":"X7MkeQFZKA7Mn91RAbmthGIe-pfCfPxTZVE9JAM3O8oRn6XMibA4vbkX2tVgeV3oI8O85JhI2hcPHQUiRuITkA","iat":1721213759,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ilg3TWtlUUZaS0E3TW45MVJBYm10aEdJZS1wZkNmUHhUWlZFOUpBTTNPOG9SbjZYTWliQTR2YmtYMnRWZ2VWM29JOE84NUpoSTJoY1BIUVVpUnVJVGtBIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc1OX0._JNpfP8wJnXScmRq79HSW9eU_EbVcD_4rl7P2nn7BwQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f702d4d3c70cd196abe99fcf0fdd985f","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"f702d4d3c70cd196abe99fcf0fdd985f"} device-1 | {"level":"info","message":"POST /devices/9322a868-184e-4243-930d-b4d3e64086c7/websocket 200 22ms","method":"POST","requestID":"f702d4d3c70cd196abe99fcf0fdd985f","responseTime":22,"status":200,"url":"/devices/9322a868-184e-4243-930d-b4d3e64086c7/websocket"} gateway-1 | {"time_local":"17/Jul/2024:10:55:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/9322a868-184e-4243-930d-b4d3e64086c7/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.030","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"f702d4d3c70cd196abe99fcf0fdd985f"} device-1 | {"level":"info","message":"Sending changed-callback for device 'http://localhost/devices/9322a868-184e-4243-930d-b4d3e64086c7' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"device 'http://localhost/devices/9322a868-184e-4243-930d-b4d3e64086c7' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"537d06005c5b0fe47e8bdf7430dc2e70","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"537d06005c5b0fe47e8bdf7430dc2e70","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","device":{"announcedAvailability":[],"connected":true,"description":"A JS test device","isPublic":true,"name":"JS Device 1","services":[],"type":"device","url":"http://localhost/devices/9322a868-184e-4243-930d-b4d3e64086c7"},"eventType":"device-changed"}},"level":"info","message":"received a callback","requestID":"537d06005c5b0fe47e8bdf7430dc2e70"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc1OX0.cf5FYdgVrS11MEGnCUj3bghywu3jsyxIBL1-pyAkAY4","level":"info","message":"auth send jwt","requestID":"104b18352deb3761fe7ce4768d63a6fc"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"104b18352deb3761fe7ce4768d63a6fc","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"104b18352deb3761fe7ce4768d63a6fc"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":831,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:59Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":831,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.725175,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9322a868-184e-4243-930d-b4d3e64086c7","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"104b18352deb3761fe7ce4768d63a6fc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/9322a868-184e-4243-930d-b4d3e64086c7","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213759,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc1OX0.cf5FYdgVrS11MEGnCUj3bghywu3jsyxIBL1-pyAkAY4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"104b18352deb3761fe7ce4768d63a6fc","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9322a868-184e-4243-930d-b4d3e64086c7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9322a868-184e-4243-930d-b4d3e64086c7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:57.335865266Z"}]},"request_id":"61d5e0cd-cc65-4a0c-81df-0e1bd6cbbbbc","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213759.5358794} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"104b18352deb3761fe7ce4768d63a6fc","responseTime":4,"status":200,"url":"/relations/query"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 22ms","method":"POST","requestID":"537d06005c5b0fe47e8bdf7430dc2e70","responseTime":22,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:55:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch","requestID":"537d06005c5b0fe47e8bdf7430dc2e70"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"104b18352deb3761fe7ce4768d63a6fc"} gateway-1 | {"time_local":"17/Jul/2024:10:55:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9322a868-184e-4243-930d-b4d3e64086c7? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"104b18352deb3761fe7ce4768d63a6fc"} device-1 | {"level":"info","message":"GET /devices/9322a868-184e-4243-930d-b4d3e64086c7? 200 19ms","method":"GET","requestID":"104b18352deb3761fe7ce4768d63a6fc","responseTime":19,"status":200,"url":"/devices/9322a868-184e-4243-930d-b4d3e64086c7?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc1OX0.cf5FYdgVrS11MEGnCUj3bghywu3jsyxIBL1-pyAkAY4","level":"info","message":"auth send jwt","requestID":"12c71f8a475b46ccac6aa799132c659d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"12c71f8a475b46ccac6aa799132c659d","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"12c71f8a475b46ccac6aa799132c659d"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":832,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:55:59Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":832,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.262814,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:55:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/01a7351e-3f56-4196-ba3b-bdba3980a3ad","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"12c71f8a475b46ccac6aa799132c659d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/01a7351e-3f56-4196-ba3b-bdba3980a3ad","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213759,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc1OX0.cf5FYdgVrS11MEGnCUj3bghywu3jsyxIBL1-pyAkAY4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"12c71f8a475b46ccac6aa799132c659d","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F01a7351e-3f56-4196-ba3b-bdba3980a3ad","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F01a7351e-3f56-4196-ba3b-bdba3980a3ad","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:55.155222432Z"}]},"request_id":"0ce57fdb-ff9a-4cc3-9691-4a07aca19fd9","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213759.562848} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"12c71f8a475b46ccac6aa799132c659d","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"12c71f8a475b46ccac6aa799132c659d"} gateway-1 | {"time_local":"17/Jul/2024:10:55:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/01a7351e-3f56-4196-ba3b-bdba3980a3ad? HTTP/1.1","status": "200","body_bytes_sent":"307","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"12c71f8a475b46ccac6aa799132c659d"} device-1 | {"level":"info","message":"GET /devices/01a7351e-3f56-4196-ba3b-bdba3980a3ad? 200 18ms","method":"GET","requestID":"12c71f8a475b46ccac6aa799132c659d","responseTime":18,"status":200,"url":"/devices/01a7351e-3f56-4196-ba3b-bdba3980a3ad?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"28731d50-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"28736b70-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":833,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:56:02Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":833,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.192306,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:56:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9322a868-184e-4243-930d-b4d3e64086c7","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"28731d50-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/9322a868-184e-4243-930d-b4d3e64086c7","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213757,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc1N30.fZxN2NrMSCigZi20RnXOnmhFs52XKwFg_STAk0Tovb0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"28731d50-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:58334","level":"info","msg":"Received request.","req_id":834,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:56:02Z"} authorization-1 | {"client_addr":"127.0.0.1:58334","level":"info","msg":"Sent response.","req_id":834,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.970477,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:56:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/01a7351e-3f56-4196-ba3b-bdba3980a3ad","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"28736b70-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/01a7351e-3f56-4196-ba3b-bdba3980a3ad","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213757,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc1N30.fZxN2NrMSCigZi20RnXOnmhFs52XKwFg_STAk0Tovb0"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"28736b70-442b-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9322a868-184e-4243-930d-b4d3e64086c7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9322a868-184e-4243-930d-b4d3e64086c7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:57.335865266Z"}]},"request_id":"5271173d-c512-42ce-bdc0-702822fe9988","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213762.4841752} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"28731d50-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F01a7351e-3f56-4196-ba3b-bdba3980a3ad","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F01a7351e-3f56-4196-ba3b-bdba3980a3ad","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"},"timestamp":"2024-07-17T10:55:55.155222432Z"}]},"request_id":"90176b5b-92d2-4e31-806d-d3bd470d16f6","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213762.4865556} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"28736b70-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"28731d50-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/9322a868-184e-4243-930d-b4d3e64086c7? 200 24ms","method":"GET","requestID":"28731d50-442b-11ef-8685-a1e9f27e6f28","responseTime":24,"status":200,"url":"/devices/9322a868-184e-4243-930d-b4d3e64086c7?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"28736b70-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /devices/01a7351e-3f56-4196-ba3b-bdba3980a3ad? 200 23ms","method":"GET","requestID":"28736b70-442b-11ef-8685-a1e9f27e6f28","responseTime":23,"status":200,"url":"/devices/01a7351e-3f56-4196-ba3b-bdba3980a3ad?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"28776310-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":835,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:56:02Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9322a868-184e-4243-930d-b4d3e64086c7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"25ad6fc7-7edd-45e8-bdc0-be4f5be886a9","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213762.5043993} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":835,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.995093,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:56:02Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9322a868-184e-4243-930d-b4d3e64086c7","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"28776310-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9322a868-184e-4243-930d-b4d3e64086c7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"28776310-442b-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"28776310-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/9322a868-184e-4243-930d-b4d3e64086c7/signaling 200 13ms","method":"POST","requestID":"28776310-442b-11ef-8685-a1e9f27e6f28","responseTime":13,"status":200,"url":"/devices/9322a868-184e-4243-930d-b4d3e64086c7/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2879d410-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":836,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:56:02Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F01a7351e-3f56-4196-ba3b-bdba3980a3ad","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b4a7583c-495c-424b-a79e-4bb922235f61","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213762.5203505} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":836,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.762472,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:56:02Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/01a7351e-3f56-4196-ba3b-bdba3980a3ad","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"2879d410-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/01a7351e-3f56-4196-ba3b-bdba3980a3ad","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"2879d410-442b-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2879d410-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/01a7351e-3f56-4196-ba3b-bdba3980a3ad/signaling 200 13ms","method":"POST","requestID":"2879d410-442b-11ef-8685-a1e9f27e6f28","responseTime":13,"status":200,"url":"/devices/01a7351e-3f56-4196-ba3b-bdba3980a3ad/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/232be412-ec66-43d5-a0ba-859c26e67ff4"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"ae1cec80b568a674f23e9d7a10361b7d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/232be412-ec66-43d5-a0ba-859c26e67ff4"},"level":"info","message":"Building connection plan","requestID":"ae1cec80b568a674f23e9d7a10361b7d"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"3a73b471-07f2-404a-9482-84b9cd1db42e"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"9b54a17b-cbcc-40dd-a39c-3d7d49bd01a9"}],"serviceType":"http://api.goldi-labs.de/serviceTypes/electrical","uuid":"f69578db-5b4a-4fa8-96a3-1c51a93b04d9"}]},"level":"info","message":"Built pairwise service configurations","requestID":"ae1cec80b568a674f23e9d7a10361b7d"} experiment-1 | {"data":{"connectionPlan":[{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/01a7351e-3f56-4196-ba3b-bdba3980a3ad"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/9322a868-184e-4243-930d-b4d3e64086c7"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"ae1cec80b568a674f23e9d7a10361b7d"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"287c6c20-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":837,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:56:02Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":837,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.19841,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:56:02Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"287c6c20-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213757,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc1N30.fZxN2NrMSCigZi20RnXOnmhFs52XKwFg_STAk0Tovb0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"287c6c20-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined#owner@http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e'. Reason: the 'user' field must be an object (e.g. document:1) or an 'object#relation' or a typed wildcard (e.g. group:*)","grpc_code":2000,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]}},"raw_response":{},"request_id":"a59e83a3-15fe-4b52-8a90-dece8a4ef94e","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213762.5482104} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2c6568a2-fd01-43ae-a18a-78ae44f579c0","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213762.54878} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"287c6c20-442b-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"287c6c20-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"287c6c20-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/7650c910-7278-45df-8243-2b2d117dcd1a'","requestID":"287c6c20-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/7650c910-7278-45df-8243-2b2d117dcd1a'","requestID":"287c6c20-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"287c6c20-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 36ms","method":"POST","requestID":"287c6c20-442b-11ef-8685-a1e9f27e6f28","responseTime":36,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"287c6c20-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/7650c910-7278-45df-8243-2b2d117dcd1a","device":"01a7351e-3f56-4196-ba3b-bdba3980a3ad","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":false} device-1 | {"command":"createPeerconnection","connectionType":"webrtc","connectionUrl":"http://localhost/peerconnections/7650c910-7278-45df-8243-2b2d117dcd1a","device":"9322a868-184e-4243-930d-b4d3e64086c7","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"creating connection","messageType":"command","services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}],"tiebreaker":true} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/232be412-ec66-43d5-a0ba-859c26e67ff4"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"ae1cec80b568a674f23e9d7a10361b7d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2886cc60-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":838,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:56:02Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9322a868-184e-4243-930d-b4d3e64086c7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0e2f8d6e-b8b6-450a-bd77-e393d88fb57e","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213762.6029797} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":838,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.113856,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:56:02Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9322a868-184e-4243-930d-b4d3e64086c7","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"2886cc60-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9322a868-184e-4243-930d-b4d3e64086c7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2886cc60-442b-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2886cc60-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/9322a868-184e-4243-930d-b4d3e64086c7/signaling 200 9ms","method":"POST","requestID":"2886cc60-442b-11ef-8685-a1e9f27e6f28","responseTime":9,"status":200,"url":"/devices/9322a868-184e-4243-930d-b4d3e64086c7/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"28885300-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":839,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:56:02Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F01a7351e-3f56-4196-ba3b-bdba3980a3ad","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"21d59e52-c5ca-4c2f-978c-cb085703633f","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213762.6137183} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":839,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.360392,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:56:02Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/01a7351e-3f56-4196-ba3b-bdba3980a3ad","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"28885300-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/01a7351e-3f56-4196-ba3b-bdba3980a3ad","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"28885300-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"device":"01a7351e-3f56-4196-ba3b-bdba3980a3ad","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"01a7351e-3f56-4196-ba3b-bdba3980a3ad","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"28885300-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/01a7351e-3f56-4196-ba3b-bdba3980a3ad/signaling 200 11ms","method":"POST","requestID":"28885300-442b-11ef-8685-a1e9f27e6f28","responseTime":11,"status":200,"url":"/devices/01a7351e-3f56-4196-ba3b-bdba3980a3ad/signaling"} device-1 | {"device":"9322a868-184e-4243-930d-b4d3e64086c7","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"9322a868-184e-4243-930d-b4d3e64086c7","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 6360655168230520155 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:5l9C\r\na=ice-pwd:D1kA8v+7ABZ3AFN+t/9aI6q+\r\na=ice-options:trickle\r\na=fingerprint:sha-256 97:48:01:1C:A3:D7:4E:44:F8:2A:89:B1:8D:64:30:BF:25:0D:EA:3D:23:F1:9E:22:A8:62:AD:AE:4B:31:9E:FE\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"9322a868-184e-4243-930d-b4d3e64086c7","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 2613145278606046781 2 IN IP4 127.0.0.1\r\ns=-\r\nt=0 0\r\na=group:BUNDLE 0\r\na=extmap-allow-mixed\r\na=msid-semantic: WMS\r\nm=application 9 UDP/DTLS/SCTP webrtc-datachannel\r\nc=IN IP4 0.0.0.0\r\na=ice-ufrag:/OzM\r\na=ice-pwd:bg8LVtuNy4EOpmlKtPR5PVgQ\r\na=ice-options:trickle\r\na=fingerprint:sha-256 19:5E:32:E1:1C:9A:7F:38:B7:81:5D:1F:7C:AC:E6:0A:60:D6:BB:92:85:89:61:48:F6:82:A1:E5:77:D3:CC:24\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"01a7351e-3f56-4196-ba3b-bdba3980a3ad","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:2864635265 1 udp 2113937151 f743cf4a-cd35-4407-b1c4-5d499e350fc1.local 42825 typ host generation 0 ufrag /OzM network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"01a7351e-3f56-4196-ba3b-bdba3980a3ad","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:966098066 1 udp 1677729535 141.24.211.56 42825 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag /OzM network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"01a7351e-3f56-4196-ba3b-bdba3980a3ad","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/01a7351e-3f56-4196-ba3b-bdba3980a3ad'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/01a7351e-3f56-4196-ba3b-bdba3980a3ad'"} device-1 | {"content":{"candidate":"candidate:3636870371 1 udp 2113937151 6b171ea1-63ae-4c01-8a2a-f2eba2d72552.local 53695 typ host generation 0 ufrag 5l9C network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"9322a868-184e-4243-930d-b4d3e64086c7","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1558927004 1 udp 1677729535 141.24.211.56 53695 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag 5l9C network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"9322a868-184e-4243-930d-b4d3e64086c7","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/9322a868-184e-4243-930d-b4d3e64086c7'"} device-1 | {"device":"9322a868-184e-4243-930d-b4d3e64086c7","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"01a7351e-3f56-4196-ba3b-bdba3980a3ad","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/7650c910-7278-45df-8243-2b2d117dcd1a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"7650c910-7278-45df-8243-2b2d117dcd1a","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"9322a868-184e-4243-930d-b4d3e64086c7","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"168d9bd3aafd5340ed8dfeedbba794b9","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} device-1 | {"device":"01a7351e-3f56-4196-ba3b-bdba3980a3ad","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"9322a868-184e-4243-930d-b4d3e64086c7","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"168d9bd3aafd5340ed8dfeedbba794b9","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/01a7351e-3f56-4196-ba3b-bdba3980a3ad"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/9322a868-184e-4243-930d-b4d3e64086c7"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/7650c910-7278-45df-8243-2b2d117dcd1a"}}},"level":"info","message":"received a callback","requestID":"168d9bd3aafd5340ed8dfeedbba794b9"} device-1 | {"device":"01a7351e-3f56-4196-ba3b-bdba3980a3ad","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 5ms","method":"POST","requestID":"168d9bd3aafd5340ed8dfeedbba794b9","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:56:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.008","http_referrer":"","http_user_agent":"node-fetch","requestID":"168d9bd3aafd5340ed8dfeedbba794b9"} device-1 | {"device":"01a7351e-3f56-4196-ba3b-bdba3980a3ad","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"7650c910-7278-45df-8243-2b2d117dcd1a","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"7650c910-7278-45df-8243-2b2d117dcd1a","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/7650c910-7278-45df-8243-2b2d117dcd1a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"7650c910-7278-45df-8243-2b2d117dcd1a","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2d1439c9c37a299eb1ddcc64623b9a26","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"2d1439c9c37a299eb1ddcc64623b9a26","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/01a7351e-3f56-4196-ba3b-bdba3980a3ad"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/9322a868-184e-4243-930d-b4d3e64086c7"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/7650c910-7278-45df-8243-2b2d117dcd1a"}}},"level":"info","message":"received a callback","requestID":"2d1439c9c37a299eb1ddcc64623b9a26"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"289412d0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":840,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:56:02Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F7650c910-7278-45df-8243-2b2d117dcd1a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9b89c908-5558-4b4e-aabe-a9db29e08b68","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213762.6904066} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":840,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.610142,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:56:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/7650c910-7278-45df-8243-2b2d117dcd1a","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"289412d0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/7650c910-7278-45df-8243-2b2d117dcd1a","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"289412d0-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"289412d0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"GET /peerconnections/7650c910-7278-45df-8243-2b2d117dcd1a 200 9ms","method":"GET","requestID":"289412d0-442b-11ef-8685-a1e9f27e6f28","responseTime":9,"status":200,"url":"/peerconnections/7650c910-7278-45df-8243-2b2d117dcd1a"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 30ms","method":"POST","requestID":"2d1439c9c37a299eb1ddcc64623b9a26","responseTime":30,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:56:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.033","http_referrer":"","http_user_agent":"node-fetch","requestID":"2d1439c9c37a299eb1ddcc64623b9a26"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"28980a70-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":841,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:56:02Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F01a7351e-3f56-4196-ba3b-bdba3980a3ad","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1efb102f-4972-4067-989c-f3e8170af040","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213762.7156327} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":841,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.05038,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:56:02Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/01a7351e-3f56-4196-ba3b-bdba3980a3ad","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"28980a70-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/01a7351e-3f56-4196-ba3b-bdba3980a3ad","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"28980a70-442b-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"28980a70-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/01a7351e-3f56-4196-ba3b-bdba3980a3ad/signaling 200 8ms","method":"POST","requestID":"28980a70-442b-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/devices/01a7351e-3f56-4196-ba3b-bdba3980a3ad/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"28999110-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":842,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:56:02Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9322a868-184e-4243-930d-b4d3e64086c7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cfc50e4f-6b53-4a7f-a162-120657406c57","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213762.7248952} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":842,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.190963,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:56:02Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9322a868-184e-4243-930d-b4d3e64086c7","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"28999110-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9322a868-184e-4243-930d-b4d3e64086c7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"28999110-442b-11ef-8685-a1e9f27e6f28","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"28999110-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/9322a868-184e-4243-930d-b4d3e64086c7/signaling 200 7ms","method":"POST","requestID":"28999110-442b-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/devices/9322a868-184e-4243-930d-b4d3e64086c7/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc2Mn0.b4i-NsD8X98Ny6mxY9zzkqPjEfksTBnCjcIOPnVvDBs","level":"info","message":"auth send jwt","requestID":"77a338fcf1c35a1b617744e0e2cdf9d6"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"77a338fcf1c35a1b617744e0e2cdf9d6","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/232be412-ec66-43d5-a0ba-859c26e67ff4","requestID":"77a338fcf1c35a1b617744e0e2cdf9d6"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":843,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:56:02Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":843,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.708522,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:56:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/232be412-ec66-43d5-a0ba-859c26e67ff4","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"77a338fcf1c35a1b617744e0e2cdf9d6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:http://localhost/experiments/232be412-ec66-43d5-a0ba-859c26e67ff4","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213762,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc2Mn0.b4i-NsD8X98Ny6mxY9zzkqPjEfksTBnCjcIOPnVvDBs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"77a338fcf1c35a1b617744e0e2cdf9d6","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/232be412-ec66-43d5-a0ba-859c26e67ff4","requestID":"77a338fcf1c35a1b617744e0e2cdf9d6"} gateway-1 | {"time_local":"17/Jul/2024:10:56:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/232be412-ec66-43d5-a0ba-859c26e67ff4 HTTP/1.1","status": "200","body_bytes_sent":"1180","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"77a338fcf1c35a1b617744e0e2cdf9d6"} experiment-1 | {"level":"info","message":"GET /experiments/232be412-ec66-43d5-a0ba-859c26e67ff4 200 10ms","method":"GET","requestID":"77a338fcf1c35a1b617744e0e2cdf9d6","responseTime":10,"status":200,"url":"/experiments/232be412-ec66-43d5-a0ba-859c26e67ff4"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc2Mn0.b4i-NsD8X98Ny6mxY9zzkqPjEfksTBnCjcIOPnVvDBs","level":"info","message":"auth send jwt","requestID":"49f8c8e0319ba508d22769e6b9408cee"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"49f8c8e0319ba508d22769e6b9408cee","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/232be412-ec66-43d5-a0ba-859c26e67ff4","requestID":"49f8c8e0319ba508d22769e6b9408cee"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":844,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:56:02Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":844,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.705094,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:56:02Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/232be412-ec66-43d5-a0ba-859c26e67ff4","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"49f8c8e0319ba508d22769e6b9408cee","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"experiment:http://localhost/experiments/232be412-ec66-43d5-a0ba-859c26e67ff4","object_type":"experiment","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213762,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc2Mn0.b4i-NsD8X98Ny6mxY9zzkqPjEfksTBnCjcIOPnVvDBs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"49f8c8e0319ba508d22769e6b9408cee","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/232be412-ec66-43d5-a0ba-859c26e67ff4"},"level":"info","message":"Attempting to finish experiment","requestID":"49f8c8e0319ba508d22769e6b9408cee"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"28a32e00-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":845,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:56:02Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":845,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.123908,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:56:02Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/7650c910-7278-45df-8243-2b2d117dcd1a","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"28a32e00-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"peerconnection:http://localhost/peerconnections/7650c910-7278-45df-8243-2b2d117dcd1a","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213762,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc2Mn0.b4i-NsD8X98Ny6mxY9zzkqPjEfksTBnCjcIOPnVvDBs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"28a32e00-442b-11ef-8685-a1e9f27e6f28","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/7650c910-7278-45df-8243-2b2d117dcd1a","device":"9322a868-184e-4243-930d-b4d3e64086c7","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/7650c910-7278-45df-8243-2b2d117dcd1a","device":"01a7351e-3f56-4196-ba3b-bdba3980a3ad","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/7650c910-7278-45df-8243-2b2d117dcd1a' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/7650c910-7278-45df-8243-2b2d117dcd1a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"7650c910-7278-45df-8243-2b2d117dcd1a","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F7650c910-7278-45df-8243-2b2d117dcd1a': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F7650c910-7278-45df-8243-2b2d117dcd1a","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]},"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":null},"raw_response":{},"request_id":"a6737fa5-ab18-4061-9b56-7d9421a84816","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213762.7981844} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"94bda113-5c35-42ad-b016-8f0984ef7b38","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213762.7984462} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"28a32e00-442b-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6213c0fcc4574410d2211a6414cfe9fd","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 0ms","method":"GET","requestID":"6213c0fcc4574410d2211a6414cfe9fd","responseTime":0,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/01a7351e-3f56-4196-ba3b-bdba3980a3ad"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/9322a868-184e-4243-930d-b4d3e64086c7"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/7650c910-7278-45df-8243-2b2d117dcd1a"}}},"level":"info","message":"received a callback","requestID":"6213c0fcc4574410d2211a6414cfe9fd"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"130dfa71692978d9bd2c55e9859b77db","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"130dfa71692978d9bd2c55e9859b77db","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"28a32e00-442b-11ef-8685-a1e9f27e6f28"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/01a7351e-3f56-4196-ba3b-bdba3980a3ad"},{"config":{"services":[{"interfaces":[],"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"http://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/9322a868-184e-4243-930d-b4d3e64086c7"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/7650c910-7278-45df-8243-2b2d117dcd1a"}}},"level":"info","message":"received a callback","requestID":"130dfa71692978d9bd2c55e9859b77db"} device-1 | {"level":"info","message":"DELETE /peerconnections/7650c910-7278-45df-8243-2b2d117dcd1a 204 19ms","method":"DELETE","requestID":"28a32e00-442b-11ef-8685-a1e9f27e6f28","responseTime":19,"status":204,"url":"/peerconnections/7650c910-7278-45df-8243-2b2d117dcd1a"} device-1 | {"level":"info","message":"deleteDevicesByDeviceId called","requestID":"28a63b40-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":846,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:56:02Z"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":846,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.774006,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:56:02Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"device:http://localhost/devices/9322a868-184e-4243-930d-b4d3e64086c7","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"28a63b40-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e","object":"device:http://localhost/devices/9322a868-184e-4243-930d-b4d3e64086c7","object_type":"device","payload":{"admin":true,"edgeToken":"NYHxZnMtIIadtguDn8ttiT4rUviHzA2amiU8k4fwe0tEfH0XI0D8dgzIg4uhuO0qind4WrT1EfvSu60aRgKQww","iat":1721213762,"sub":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e","subject_alt":"http://localhost/users/83b595b9-1b61-4c60-ae32-f366a704586e"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzgzYjU5NWI5LTFiNjEtNGM2MC1hZTMyLWYzNjZhNzA0NTg2ZSIsImVkZ2VUb2tlbiI6Ik5ZSHhabk10SUlhZHRndURuOHR0aVQ0clV2aUh6QTJhbWlVOGs0ZndlMHRFZkgwWEkwRDhkZ3pJZzR1aHVPMHFpbmQ0V3JUMUVmdlN1NjBhUmdLUXd3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyMTIxMzc2Mn0.b4i-NsD8X98Ny6mxY9zzkqPjEfksTBnCjcIOPnVvDBs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"28a63b40-442b-11ef-8685-a1e9f27e6f28","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/9322a868-184e-4243-930d-b4d3e64086c7'"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e', relation: 'owner', object: 'device:http%3A%2F%2Flocalhost%2Fdevices%2F9322a868-184e-4243-930d-b4d3e64086c7': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9322a868-184e-4243-930d-b4d3e64086c7","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]},"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":null},"raw_response":{},"request_id":"59bfd7c7-ef0c-45f0-a3a5-adb156a752af","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213762.8178446} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2ac8eb67-b5b9-486e-9979-d208c1a2e7b2","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213762.8180501} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"28a63b40-442b-11ef-8685-a1e9f27e6f28","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"deleteDevicesByDeviceId succeeded","requestID":"28a63b40-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"DELETE /devices/9322a868-184e-4243-930d-b4d3e64086c7 204 27ms","method":"DELETE","requestID":"28a63b40-442b-11ef-8685-a1e9f27e6f28","responseTime":27,"status":204,"url":"/devices/9322a868-184e-4243-930d-b4d3e64086c7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/232be412-ec66-43d5-a0ba-859c26e67ff4"},"level":"info","message":"Successfully finished experiment","requestID":"49f8c8e0319ba508d22769e6b9408cee"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"28aca3e0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":847,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:56:02Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F01a7351e-3f56-4196-ba3b-bdba3980a3ad","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1fdaaac6-8890-4571-9ec2-11094a9b1379","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213762.853524} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":847,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.414488,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:56:02Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/01a7351e-3f56-4196-ba3b-bdba3980a3ad","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"28aca3e0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/01a7351e-3f56-4196-ba3b-bdba3980a3ad","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"28aca3e0-442b-11ef-8685-a1e9f27e6f28","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"28aca3e0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/01a7351e-3f56-4196-ba3b-bdba3980a3ad/signaling 200 14ms","method":"POST","requestID":"28aca3e0-442b-11ef-8685-a1e9f27e6f28","responseTime":14,"status":200,"url":"/devices/01a7351e-3f56-4196-ba3b-bdba3980a3ad/signaling"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2017) desc = cannot delete a tuple which does not exist: user: 'http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F232be412-ec66-43d5-a0ba-859c26e67ff4': invalid write input","grpc_code":2017,"grpc_method":"Write","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F232be412-ec66-43d5-a0ba-859c26e67ff4","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F83b595b9-1b61-4c60-ae32-f366a704586e"}]},"store_id":"01J3057MFT8W5871BT6362YY2Z","writes":null},"raw_response":{},"request_id":"c3660959-0ed3-459e-a797-7bb638364fb2","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213762.8613641} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","store_id":"01J3057MFT8W5871BT6362YY2Z"},"raw_response":{"authorization_model":{"id":"01J3057MGYFH3F33YSZDQ4PBMW","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"90350d71-f03d-42a4-b95d-7982c4a553d1","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213762.8615758} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"28af3bf0-442b-11ef-8685-a1e9f27e6f28"} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"49f8c8e0319ba508d22769e6b9408cee","responseTime":19,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Received request.","req_id":848,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-07-17T10:56:02Z"} authorization-1 | {"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:49002","raw_request":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","contextual_tuples":null,"store_id":"01J3057MFT8W5871BT6362YY2Z","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9322a868-184e-4243-930d-b4d3e64086c7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"99362618-f725-42ec-9a27-2a991ca4ff28","store_id":"01J3057MFT8W5871BT6362YY2Z","subsystem":"openfga","timestamp":1721213762.8699627} authorization-1 | {"client_addr":"127.0.0.1:60534","level":"info","msg":"Sent response.","req_id":848,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.869383,"resp_status":200,"subsystem":"opa","time":"2024-07-17T10:56:02Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9322a868-184e-4243-930d-b4d3e64086c7","openfga":{"authorization_model_id":"01J3057MGYFH3F33YSZDQ4PBMW","store":"01J3057MFT8W5871BT6362YY2Z"},"requestID":"28af3bf0-442b-11ef-8685-a1e9f27e6f28","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9322a868-184e-4243-930d-b4d3e64086c7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"28af3bf0-442b-11ef-8685-a1e9f27e6f28","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"data":{"error":"MissingEntityError","message":"The requested Device Overview does not exist in the database","method":"POST","stack":"MissingEntityError: The requested Device Overview does not exist in the database\n at DeviceOverviewRepository.findOneOrFail (file:///usr/local/lib/node_modules/@crosslab/service-common/lib/esm/database/abstractRepository.js:63:19)\n at async DeviceRepository.findOneOrFail (file:///usr/local/lib/node_modules/@crosslab/service-device/app/database/repositories/device.js:155:32)\n at async Object.postDevicesByDeviceIdSignaling (file:///usr/local/lib/node_modules/@crosslab/service-device/app/operations/devices/device/signaling/post.js:22:25)\n at async file:///usr/local/lib/node_modules/@crosslab/service-device/app/generated/routes.js:276:28","status":404,"url":"/devices/9322a868-184e-4243-930d-b4d3e64086c7/signaling"},"level":"error","message":"An error occurred during the handling of a request","requestID":"28af3bf0-442b-11ef-8685-a1e9f27e6f28"} device-1 | {"level":"info","message":"POST /devices/9322a868-184e-4243-930d-b4d3e64086c7/signaling 404 12ms","method":"POST","requestID":"28af3bf0-442b-11ef-8685-a1e9f27e6f28","responseTime":12,"status":404,"url":"/devices/9322a868-184e-4243-930d-b4d3e64086c7/signaling"} experiment-1 | {"data":{"response":{"body":{"error":"MissingEntityError","message":"The requested Device Overview does not exist in the database"},"status":404}},"level":"error","message":"Could not send status-update message","requestID":"49f8c8e0319ba508d22769e6b9408cee"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/232be412-ec66-43d5-a0ba-859c26e67ff4","requestID":"49f8c8e0319ba508d22769e6b9408cee"} gateway-1 | {"time_local":"17/Jul/2024:10:56:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/232be412-ec66-43d5-a0ba-859c26e67ff4 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.154","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"49f8c8e0319ba508d22769e6b9408cee"} experiment-1 | {"level":"info","message":"DELETE /experiments/232be412-ec66-43d5-a0ba-859c26e67ff4 204 150ms","method":"DELETE","requestID":"49f8c8e0319ba508d22769e6b9408cee","responseTime":150,"status":204,"url":"/experiments/232be412-ec66-43d5-a0ba-859c26e67ff4"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 128ms","method":"POST","requestID":"6213c0fcc4574410d2211a6414cfe9fd","responseTime":128,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:56:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.130","http_referrer":"","http_user_agent":"node-fetch","requestID":"6213c0fcc4574410d2211a6414cfe9fd"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 128ms","method":"POST","requestID":"130dfa71692978d9bd2c55e9859b77db","responseTime":128,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:56:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.129","http_referrer":"","http_user_agent":"node-fetch","requestID":"130dfa71692978d9bd2c55e9859b77db"} gateway-1 | {"time_local":"17/Jul/2024:10:56:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2405","request_time":"3.437","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"7708c0d19b844898263c46d394dff71d"} gateway-1 | {"time_local":"17/Jul/2024:10:56:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2647","request_time":"5.751","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"795853335b167a6108980c0617be4d95"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/01a7351e-3f56-4196-ba3b-bdba3980a3ad' closed"} device-1 | {"level":"info","message":"Sending changed-callback for device 'http://localhost/devices/9322a868-184e-4243-930d-b4d3e64086c7' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/9322a868-184e-4243-930d-b4d3e64086c7' closed"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6ba1a0dc704a4893ed3018d0db2c13df","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 0ms","method":"GET","requestID":"6ba1a0dc704a4893ed3018d0db2c13df","responseTime":0,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","device":{"announcedAvailability":[],"connected":false,"description":"A JS test device","isPublic":true,"name":"JS Device 1","services":[],"type":"device","url":"http://localhost/devices/9322a868-184e-4243-930d-b4d3e64086c7"},"eventType":"device-changed"}},"level":"info","message":"received a callback","requestID":"6ba1a0dc704a4893ed3018d0db2c13df"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 410 2ms","method":"POST","requestID":"6ba1a0dc704a4893ed3018d0db2c13df","responseTime":2,"status":410,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"17/Jul/2024:10:56:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "410","body_bytes_sent":"5","request_time":"0.005","http_referrer":"","http_user_agent":"node-fetch","requestID":"6ba1a0dc704a4893ed3018d0db2c13df"} authorization-1 | {"level":"info","msg":"Shutting down...","subsystem":"opa","time":"2024-07-17T10:56:08Z"} authorization-1 | {"level":"info","msg":"Server shutdown.","subsystem":"opa","time":"2024-07-17T10:56:08Z"} authentication-1 exited with code 0 device-1 exited with code 0 federation-1 exited with code 0 experiment-1 exited with code 0 authorization-1 exited with code 0 gateway-1 exited with code 0